0

下面的代码是通过 ajax 加载的:

<div class="main">
    //some content
</div>    
<div class="advanced">
    //some content
</div>
<div class="other">
    //some content
</div>
<div class="pass">
    //some content
</div>
<script>$('.advanced,.other,.pass').hide();</script>

它们在正常加载时隐藏得很好,但是当通过 ajax 加载时它不再起作用了。为什么会这样?我不确定$.on()这里是否真的有帮助。

4

2 回答 2

1

如果上面的例子是通过 jQuery ajax 加载的,为什么不直接调用

$('.advanced,.other,.pass').hide();

ajax请求完成后?

例如:

$.ajax({
    url: "Your AJAX URL",
    dataType: 'html',
    type: "POST",
    success: function (json) {
        // Add you elements to the DOM
    },
    complete: function () {
        $('.advanced,.other,.pass').hide();
    }
});
于 2012-04-27T11:39:02.173 回答
0

根据jQuery

检索到的数据中的任何嵌入 JavaScript都会在 HTML 作为字符串返回之前执行。

这可能意味着您的脚本在您设法对其进行任何操作之前先执行。

于 2012-04-27T11:43:47.723 回答