这个问题只出现在joomla -
我正在尝试在我的 joomla 网站上使用内容流插件
这是插件网站 - http://www.jacksasylum.eu/ContentFlow/
这是我的网站 - http://2-dweb.com/RND/
如你所见,它不起作用 - 它只是永远停留在加载阶段
仔细检查后我发现这段代码有问题:
if (this.content.nodeName == "IMG") {
CFobj._imagesToLoad++;
var foobar = function () {
CFobj._imagesToLoad--;
this.image = this.content;
this.setImageFormat(this.image);
if ( CFobj.conf.reflectionHeight > 0) {
this.addReflection();
}
this.initClick();
CFobj._addItemCueProcess(true);
}.bind(this);
if (this.content.complete && this.content.width > 0)
window.setTimeout(foobar, 100);
else if (this.Browser.IE && !this.content.onload) {
var self = this;
var t = window.setInterval( function () {
if (self.content.complete && self.content.width > 0) {
window.clearInterval(t);
foobar();
}
}, 10);
}
else
this.content.onload = window.setTimeout(foobar, 100);
}
else {
this.initClick();
CFobj._addItemCueProcess(true);
}
};
第一行 - 它显示“未捕获类型错误:无法读取未定义的属性‘nodeName’”
但是这个东西可以在我的桌面 html 文件和插件网站上运行!
为什么它在我的 joomla 网站上不起作用? 这不是一个冲突的事情 - 我使用无冲突并且我有其他可以工作的 jquery 插件
更新:
rob w 帮助我解决了这个错误: “将第一行更改为 if (this.content && this.content.nodeName == "IMG") {。这解决了问题”
确实如此,但现在出现另一个错误:
initClick: function () {
var cItem = this.clickItem;
this[this._activeElement].addEvent('click', cItem, false);
},
错误 - 未捕获类型错误:无法调用未定义的方法“addEvent”
正如错误所解释的“Uncaught TypeError:无法读取未定义的属性‘nodeName’”,当脚本尝试访问该元素时,该元素不可用。您可以通过两种方式解决这个问题。
解决了这个问题。
我正在使用 bootstrap.css 版本 3.3.7 和 bootstrap.js 版本 4.0.0。
通过将 bootstrap.js 更改为版本 3.3.7,我的问题得到了解决!!!
仅在将所有元素加载到 DOM 后加载脚本。
您的脚本应该像这样在页面底部调用
<html>
<head></head>
<body>
<!--HTML Elements here-->
<script type="text/javascript" src="yourScript.js"></script>
</body>
</html>
如果您
使用jquery,则可以将脚本文件包含在页面中的任何位置(如果它被包裹在document.ready
中),如下所示:
$(document).ready(function(){
// your code here..
});
class="content"
很重要。结构应该是:
<div class="ContentFlow" id="cover-menu">
<div class="flow">
<div class="item" >
<div class="content">
//your stuff
</div>
</div>
</div>
</div>
<tfoot>
<tr class="fw-bolder fs-6">
<th colspan="6" class="text-nowrap align-end">Total:</th>
<th colspan="3" class="text-danger fs-3"></th>
</tr>
</tfoot>
共9栏,祝你好运。
event.preventDefault();
。