Mobile открива Innerhtml в php код functions.php

В моя wordpress файл functions.php имам следния код:

function mia_on_load_script()
{
    // Not our page, do nothing
    if( !is_page( 'test' ) )
        return;
?>

    <script type="text/javascript">
function change1(){
  document.getElementById('mydiv').innerHTML = '<div id="1" style="margin-left: 0px; padding: 0px; float: left; width: 640px; height: 392px; border: 0px;"><iframe style="border: 0 none transparent;" src="//www.ustream.tv/embed/******?wmode=direct&amp;autoplay=true" width="640" height="392" frameborder="no"></iframe></div><div id="2" style="margin-left: 0px; padding: 0px; float: left; width: 320px; height: 392px; border: 0px;"><iframe style="border: 0 none transparent;" src="//www.ustream.tv/socialstream/******" width="320" height="392" frameborder="no"></iframe></div><div id="addthisc" style="margin:0px; text-align: center; background-color:#0A0A0C; paddding: 0px 0px 0px 0px; width: 640px; height: 100%;  border:0px;"><div class="addthis_native_toolbox"></div></div>';
}
</script>


    <?php   
    };        
add_action( 'wp_head', 'mia_on_load_script' );

?>

Html кодът в теста на уеб страницата е следният:

<input type="button" onclick="change1()" value="change html in mydiv " />

Тази функция променя html в div: 'mydiv' щракване върху бутона "промяна на html в mydiv"

Вместо да променя html, щраквайки върху бутон с javascript, искам да го променя при зареждане на уеб страница, когато се прави заявка от мобилен браузър, така че реших да използвам клас Mobile_Detect.php (https://github.com/serbanghita/Mobile-Detect)

предишната ми функция беше:

function mia_on_load_script()
{
    // Not our page, do nothing
    if( !is_page( 'test' ) )
        return;
?>

         <?php   
 require_once(TEMPLATEPATH . '/MyScript/Mobile_Detect.php');
 $detect = new Mobile_Detect; 
 if ( $detect->isMobile() ) {
???????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????
}

?>



    <?php   
    };        
add_action( 'wp_head', 'mia_on_load_script' );

?>

така че кой код трябва да вмъкна на мястото на въпросителните знаци, за да променя html вместо 'document.getElementById('mydiv').innerHTML'? Благодаря


person grigione    schedule 22.03.2015    source източник


Отговори (1)


Използвайте window.addEventListener('load', ...):

function mia_on_load_script()
{
    if(is_page('test'))
    {
        require_once(TEMPLATEPATH . '/MyScript/Mobile_Detect.php');
        $detect = new Mobile_Detect; 
        if($detect->isMobile())
        {
?>

<script> <!-- No "type" attribute for HTML 5 -->
window.addEventListener('load', function()
{
    document.getElementById('mydiv').innerHTML = '<div id="1" style="margin-left: 0px; padding: 0px; float: left; width: 640px; height: 392px; border: 0px;"><iframe style="border: 0 none transparent;" src="//www.ustream.tv/embed/******?wmode=direct&amp;autoplay=true" width="640" height="392" frameborder="no"></iframe></div><div id="2" style="margin-left: 0px; padding: 0px; float: left; width: 320px; height: 392px; border: 0px;"><iframe style="border: 0 none transparent;" src="//www.ustream.tv/socialstream/******" width="320" height="392" frameborder="no"></iframe></div><div id="addthisc" style="margin:0px; text-align: center; background-color:#0A0A0C; paddding: 0px 0px 0px 0px; width: 640px; height: 100%;  border:0px;"><div class="addthis_native_toolbox"></div></div>';
});
</script>

<?php
        }
    }
}
add_action('wp_head', 'mia_on_load_script');
person Siguza    schedule 22.03.2015