Swimwire.com不再正确加载JavaScript。这与JomSocial有关,我敢肯定,因为在主页上没有JavaScript正常工作(顶部有一个蓝色条,应该是可点击的,包含“打开控制面板”字样,但不加载)。然而,如果我访问不显示JomSocial内容的页面,JavaScript将很乐意加载。
我昨天得到了一些帮助,但不幸的是我仍然非常困难。我是JavaScript的新手,Safari会把错误抛给我TypeError:表达式'$'的结果 [undefined]不是函数。 /modules/mod_rokslideshow/tmpl/slideshow.js:73TypeError: 表达式'$'的结果[undefined] 不是一个功能。 2 /媒体/系统/ JS / mootools.js:54TypeError: 输入错误
我根本不太清楚如何解释这一点。我确信JomSocial中的某些内容会导致冲突,但实际上并不知道如何解决这个问题。
杰克
答案 0 :(得分:2)
有多个库定义$
;我知道jQuery和Prototype这样做,不确定MooTools(我在你的错误消息中看到)。因此,基于该消息,我只能猜测您以某种方式加载了两个使用$
的库。
jQuery解决方案是使用noConflict:http://docs.jquery.com/Core/jQuery.noConflict。不知道冲突的双方,也无法自己访问网站,这是我能做的最好的。
编辑:您是否尝试过MooTools建议的任何解决方案? http://mootools.net/blog/2009/06/22/the-dollar-safe-mode/
答案 1 :(得分:1)
您的jQuery.noConflict()
很可能是在加载了其他一些脚本并尝试使用$
之后发生的。
另一件事...... jQuery.noConflict()
可能无效,如果它包含在其他库之前,就像在这种情况下一样。
答案 2 :(得分:0)
你必须确保即使你没有冲突模式的jQuery,你也有MooTools加载第一个。如果加载jQuery,将其置于无冲突模式,然后加载MooTools,它将失败。我在书中写了一些文档:http://www.packtpub.com/files/learning-joomla-1-5-extension-development-sample-chapter-8-using-javascript-effects.pdf
如果确保在将jQuery添加到文档之前进行了以下调用,它应该在jQuery之前加载MooTools:
JHTML::_('behavior.mootools');