在WordPress中将jQuery(文档).Ready更改为$.Delegate

时间:2012-04-04 作者:xyz

我正在尝试改变:

add_action(\'wp_footer\',\'myscript_in_footer\');
function myscript_in_footer(){
?>
<script type="text/javascript">
  jQuery(document).ready(function(){
   jQuery("div.domTip_tipBody").mouseover(function(){
   jQuery("#yyy a.tippy_link").css("background-color","yellow");});  

   jQuery("div.domTip_tipBody").mouseout(function(){
   jQuery("#yyy a.tippy_link").css("background-color","red");
 }); 
 });  
 </script>
<?php
}

add_action(\'wp_footer\',\'myscript_in_footer\');
function myscript_in_footer(){
?>
<script type="text/javascript">
  function(){
    $.delegate(\'p\',\'mouseover\', function(e){ 
    jQuery("#yyy a.tippy_link").css("background-color","yellow");}); 

   $.delegate(\'p\',\'mouseout\', function(e){
    jQuery("#yyy a.tippy_link").css("background-color","red");
 }); 
 });  
 </script>
<?php
}
第一个有效,但第二个无效。

更改的原因是,我有一些元素是由第一个函数未读取的短代码(例如“div.domTip\\u tipBody”)输出的,有人建议第二个方法可能会起作用,但即使使用元素“p”,我也无法让第二个方法起作用。

ThanksTim公司

1 个回复
最合适的回答,由SO网友:turbonerd 整理而成

看起来您缺少jQuery ready函数。尝试以下操作:

jQuery(document).ready(function($){
    $.delegate(\'p\',\'mouseover\', function(e){ 
        $("#yyy a.tippy_link").css("background-color","yellow");
    }); 

    $.delegate(\'p\',\'mouseout\', function(e){
        $("#yyy a.tippy_link").css("background-color","red");
    }); 
});  
干杯,

结束

相关推荐

修改此循环以适合我的jQuery滑块(幻灯片)

我正在尝试制作一个滑块,它从特定的自定义帖子类型中获取缩略图,并为每个“幻灯片”显示其中的一个。我让滑块和缩略图正常工作,但我不确定如何修改循环,使其在容器中显示4篇文章,然后重复接下来的4篇文章,依此类推。我的循环如下所示:<div id=\"slides\"> <div class=\"slides_container\"> <?php $loop = new WP_Query(array(\'post_type\' =&