调用JS文件怎么写较好?

来源:百度知道 编辑:UC知道 时间:2024/06/08 13:15:56
我用特效工具做的完整JS,保存为一个JS文件,再在网页中调用。为什么没有效果呢? 是不是应该把JS文件里的<SCRIPT></SCRIPT>这头尾去掉?如果多个特效一起,怎么做成在同一个JS文件里?
可是,不能几种特效都保存为同一个JS文件里吗?如果分开保存的话,会冲突吗?比如有些JS代码,它要修改<body>标签,为<body onload="">,另一个特效又要改为其它的,这样怎么调用?

你在封装js特效的时候就应该避免这些冲突.
具体代码具体分析了,可能出现的冲突.如
一个页面只允许有一个onload事件,如果你的a.js里写了一个window.onload = function(){}.同样b.js也写了一个,保存到同一js里的话,在不同的页面引用倒是没问题,如果同一页面要引用到这些js的话,那么就需要改动这个window.onload事件了,比如:
1.window.onload = function(){}
2.window.onload = function(){}
这种情况它只会调用其中一个onload事件.
你需要写一个公共的:window.onload事件.
var arr = [];
window.onload = function(){
for(var i in arr){
arr[i]();
}
}

有地方需要用到window.onload事件只需用
arr.push(function(){alert('1');});
arr.push(function(){alert('2');});

最后当真正调用window.onload事件的时候,会去一个一个的执行这些函数.

你这种情况只有重新整理下你的特效代码了,
一般建议采用json来封装,可避免方法或属性名字的一些冲突.

<body onload="NameOne();NameTwo();NameThree();">
或者
<script>
NameOne();
NameTwo();
NameThree();
</script>

js文件里头部和尾部是不需要<SCRIPT></SCRIPT> 这个代码的,去了....

如果针对所有.js里的变量和函数没有类同的, 即不会造成冲突

也可