我正在努力使网站响应,但我需要对侧边栏进行重新排序,使其显示在内容下方。 我在另一个答案中找到了这个脚本,但它告诉我$不是控制台中的函数。我想这是关于jquery以及wordpress如何使用文档准备好处理它的事情,但我不知道语法是什么和东西......
<script type="text/javascript">
$(window).resize(function() {
if ( $(window).width() < 768 ) {
$("#firstsidebar").insertAfter("#maincontent");
}
else{
$("#maincontent").insertAfter("#firstsidebar");
}
});
$(document).ready(function(){
if ( $(window).width() < 768 ) {
$("#firstsidebar").insertAfter("#maincontent");
}
});
</script>
EDIT。 好。由于这个问题,我得到了很多负面评价。也许它是超级简单和愚蠢的,但我不知道javascript和jquery,我只是“有点”了解它。
答案 0 :(得分:2)
WordPress在“无冲突”模式下使用jQuery,这意味着默认情况下你不能使用$。原因是其他javascript库也使用$。
要解决这个问题,你可以用jQuery替换$的每个实例,或者你可以用这样的代码包装代码::
jQuery(document).ready(function($){
});
答案 1 :(得分:2)
当jQuery没有响应$
时,通常是因为与另一个试图使用相同sigil的库发生冲突,或者CMS / Web服务器/环境设置为明确避免这种冲突。
您可以在通常使用的每个地方使用jQuery
$
。这几乎总是有效的。
或者您可以将调用包装在一个建立本地参数的函数中:
jQuery( document ).ready(function( $ ) {
// You can use the locally-scoped $ in here as an alias to jQuery.
$( "div" ).hide();
});
其他选项可用,包括定义您自己的自定义访问点(如jq
或J$
),甚至定义$
以明确指向jQuery
(或jQuery.noConflict()
代理人)。其中许多是discussed in the jQuery documentation。
您也可以通过在代码中尽早定义$
来强制使用它:
$ = jQuery;
现在$
将完全按预期工作。大概。 (除非或之前没有,因为上述JS库兼容性问题之一已经咬了你。此时你可能会决定回到一种更有条理,更有计划的方式来实现兼容性。)