1

可能重复:
无限滚动 javascript 已经触发

当用户将鼠标悬停在具有类 .item_list_image 的 div 上时,我希望显示其他 div,我正在尝试以下操作,但根本不起作用。

<script type="text/javascript">
   $("body").on("mouseenter", ".list_item_image", function () {
        {
                $(this).children(".gl_view2").show();
                $(this).children(".gl_relist").show();
        });

   $("body").on("mouseleave", ".list_item_image", function () {
       {
                $(this).children(".gl_view2").hide();
                $(this).children(".gl_relist").hide();
       });
</script>

有人建议我使用 .on 方法,因为我正在使用 jquery 无限滚动,因此在显示的页面上附加了 html,并添加了包含类 list_item_image 的 div 的新项目

4

4 回答 4

3

你错过了$(document).ready,只需用

$(document).ready(function(){
    $("body").on("mouseenter", ".list_item_image", function (){
        $(this).children(".gl_view2").show();
        $(this).children(".gl_relist").show();
    })
    .on("mouseleave", ".list_item_image", function (){
       $(this).children(".gl_view2").hide();
       $(this).children(".gl_relist").hide(); 
    });
});​

另请注意{,您的两个函数中的额外内容位于$("body").

只是一个例子

于 2012-08-27T10:39:00.873 回答
0

检查代码的括号。试试这个

 $("body").on("mouseenter", ".list_item_image", function() {
     {
         //alert('dsfs');
         $(this).children(".gl_view2").show();
         $(this).children(".gl_relist").show();
     }});

 $("body").on("mouseleave", ".list_item_image", function() {
     {
         $(this).children(".gl_view2").hide();
         $(this).children(".gl_relist").hide();
     }});
于 2012-08-27T10:34:19.857 回答
0

你需要把你的代码放在 dom 中准备好。

<script type="text/javascript">
$(function(){
                    $("body").on("mouseenter", ".list_item_image", function () {
                    {
                        $(this).children(".gl_view2").show();
                        $(this).children(".gl_relist").show();
                    });

                    $("body").on("mouseleave", ".list_item_image", function () {
                    {
                        $(this).children(".gl_view2").hide();
                        $(this).children(".gl_relist").hide();
                    });
})
            </script>

您也可以通过此代码实现相同的目的。

<script type="text/javascript">
    $(function(){
                        $(".list_item_image").hover(function () {
                        {
                            $(this).children(".gl_view2").show();
                            $(this).children(".gl_relist").show();
                        },

                        function () {
                        {
                            $(this).children(".gl_view2").hide();
                            $(this).children(".gl_relist").hide();
                        });
    })
                </script>
于 2012-08-27T10:39:54.190 回答
0

每个处理函数都有两个{{左括号,这是一个 sintax 错误。

只用一个{

于 2012-08-27T10:40:02.153 回答