这将是一个新手问题,但我希望有一个温柔的灵魂知道如何处理以下问题。
我有两个几乎相同的页面 - 除了每页上的非常小的更改。我什么都看不到会影响页面的处理方式。在一个页面上,每一个东西都应该加载。在另一页上,4次中有1次,js根本没有加载。
页面在Wordpress中。
我尝试过所有我知道的事情。 default.js对于页面是相同的,function.php对于页面是相同的。我很简单,不知道如何找出错误以及如何调试它。由于代码相同,我认为没有理由发布代码 - 因为它在一个页面上工作,而在另一个页面上工作。所以据我所知,别的东西一定是错的,但我不知道是什么。
这两个页面是http://dev.ateo.dk/kollekolle/和http://copy.ateo.dk/kollekolle/。 copy.ateo.dk是不工作的那个。如果选项卡有效,则加载js。尝试重新尝试以解决问题。
干杯。
答案 0 :(得分:0)
您所描述的问题通常难以追踪,并且可能特定于某些浏览器,甚至特定版本的浏览器。这就是为什么像www.caniuse.com这样的网站非常有用的原因。
特别关于您的问题:我不认为以下2个错误有帮助。
Uncaught ReferenceError: $ is not defined dev.ateo.dk/wp-content/themes/ateo/js/default.js:5
Uncaught ReferenceError: jQuery is not defined dev.ateo.dk/wp-content/themes/ateo/js/jquery.cookie.js:17
在某些(或所有)情况下,您的jQuery似乎未正确加载。当您解决问题时,您的问题也可能会消失。
P.S。此错误来自最新版Chrome的Developer Console。
编辑:看起来你的default.js开始执行时还没有加载jQuery。尝试找到jQuery和你的default.js应该加载的位置,看看你是否可以确保它以正确的顺序发生(例如,首先为jQuery放置<script src="..."></script>
,然后直接放置 < / strong>低于你的default.js应该确保你的default.js在jQuery之前无法加载。
如果你的default.js在DOM加载完成之前开始执行,则可能会出现额外的问题。在这种情况下,事件处理程序(例如您的选项卡)之类的东西可能没有按预期附加(因为在执行时尚未存在附加它们的节点)。这可能很微妙,因为它不会显示任何错误来表明这种情况正在发生。在开始以脚本方式操作之前,请确保等待$().load()
或等效。