-5

这应该非常简单。第一个代码块有效,但是当我将它包装在一个函数中并尝试调用该函数时,它不起作用。

这有效:

$(document).ready(function() {

        $("#groups-image").hide();
        $("#quiz-image").hide();
        $("#members-image").hide();     

});

这不起作用:

$(document).ready(function() {

        function hideatstart() {

        $("#groups-image").hide();
        $("#quiz-image").hide();
        $("#members-image").hide();     
        }

        hideatstart();
});

更新:查看接受的答案后,我能够获得工作代码。它涉及在代码行之间没有任何空格,这将允许插入 p 标记。最佳做法是将 JQuery 删除到单独的脚本中,我会这样做。以下代码有效:

$(document).ready(function() {
    function hideatstart(){
        $("#groups-image").hide();
        $("#quiz-image").hide();
        $("#members-image").hide();
        }
    hideatstart();
});
4

1 回答 1

2

我检查了您的实时网站上的 HTML,发现您的代码段输出如下:

<div class="art-postcontent">
    <!-- article-content -->
    <!-- [snipped] -->
    <p><script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script><br />
<script type="text/javascript">
    $(document).ready(function() {</p>
<p>         function hideatstart() {</p>
<p>         $("#groups-image").hide();
            $("#quiz-image").hide();
            $("#members-image").hide();     
            }</p>
<p>         hideatstart();
    });
</script></p>
    <!-- [snipped] -->
</div>

如您所见,WordPress 的wpautop过滤器将您的行包含在段落中。

如果您需要在某处注入脚本,最好使用插件或主题功能,而不是将代码粘贴到 WordPress 帖子或小部件中。所有常规的 WordPress 内容类型都被转义以防止此类可能的恶意注入。您似乎正在使用自定义art帖子类型,通常会得到类似的处理。有一些方法可以防止内容被转义,但您应该认真考虑将脚本代码移到其他地方。

于 2012-06-16T22:24:14.313 回答