找不到js的函数有可能是文件权限问题,检查文件是不是有访问权限CLI模式下644正常 CGI模式下需要755权限
文件用户组是不是正确,比如apache运行在nobody下 而文件是www 用户组 无suphp
也有可能提示错误
解决方法如下:onload的js函数是在网页加载完毕后才执行
1、首先把Google的统计分析代码去掉,然后打开网页,看看是否可以执行onload的js函数;
2、如果不行,再把AdSense的联盟广告代码去掉,然后测试显示效果;
3、如果还不行,就再把百度联盟广告的代码去掉,看是否解决问题。一般情况下,经过这三个步骤,onload的js函数不 能执行的问题就可以解决了。
实际上,在遇到这个问题是,我们只需注意一下状态栏里哪个地址的执行最久,哪个地址就是祸根了,把它去掉即可。如果是站内图片,则需要优化一下了,找出其加载慢的原因从而解决问题。
onload的js函数是在网页加载完毕后才执行
我一直不是很清楚,我以为onload的js函数是在网页打开的时候就执行了的,实际上,onload的js函数是在网页加载完毕后才执行,即它是网页最后才执行的函数。
了解了这个之后,我们就能理解为什么有时候onload的js函数没有执行了,原因很简单,因为网页有个别地方没有加载完,被k住哪里了。
<!DOCTYPE html><html>
<head>
<meta http-equiv="Content-Type" content="text/html charset=UTF-8">
<title>
RunJS 演示代码
</title>
<script>
var s = ["a","b","c"]
onload = setup
function setup() {
for(var i = 0 i < s.length i++) {
document.getElementById(s[i]).onchange = new Function("change(" + (i + 1) + ")")
}
change(0)
}
function change(v) {
console.log(v)
}
</script>
</head>
<body>
<select id="a">
<option>a</option>
<option>a1</option>
</select>
<select id="b">
<option>b</option>
<option>b1</option>
</select>
<select id="c">
<option>c</option>
<option>c1</option>
</select>
</body>
</html>