繁体   English   中英

jQuery中的行为不一致,具体取决于浏览器

[英]Inconsistent behaviour in jQuery depending on browser

我有我的jQuery:

$('.category-block').mouseover(
        function (e) {
            $(this).find('.b-expand').show();

    });

        $('.category-block').mouseout(
        function (e) {
            $(this).find('.b-expand').hide();

    });

和示例html:

<div class="category-block" id="category-1">
        <a href="#">Mod</a>
        <div class="b-expand" id="block-expand-1">
         TEST
        </div>
    </div>

以上内容似乎可以在Firefox和IE中使用,但不能在Safari和Chrome中使用。 有任何想法吗?

谢谢。

编辑:

如果我将js更改为:

$('.category-block').mouseover(
        function (e) {
            $('.b-expand').show();

    });

        $('.category-block').mouseout(
        function (e) {
            $('.b-expand').hide();

    });

它将起作用,但是当然会显示所有b展开,而不仅仅是父项下的一个。 因此,问题出在哪里?

没有没有显示的CSS属性。 也没有抛出js错误。

您可能想要的是:

$('.category-block').hover(function() {
    $(this).find('.b-expand').show();
}, function() {
    $(this).find('.b-expand').hide();
});

我刚刚在IE 8,FF 3.66,chrome 5.0.375 ...和Safari 4中对其进行了测试。

您可能在页面上其他地方缺少一些脚本; 页面上的某处。

失踪 ; 而且此类错误并不总是显示为脚本错误。

您也可能会丢失与页面结构混淆的HTML或类似HTML。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM