js文件引入失败

只引入第一个就起作用?可能第一个定义的一些全局变量被第二个覆盖,或者两个js文件的连接处由于标点符号问题导致第一个执行错误。
如果是第二种情况的话,在第二个文件的开头加一个分号";"那肯定是js冲突

①、变量名冲突
变量有全局变量和局部变量当全局变量变量和局部变量名称一致时,就会js冲突,由于变量传递数值或地址不同就会产生JavaScript错误,甚至死循环。
②、方法名冲突
函数中有很多方法,不同的js之间可能函数名一样,这就使得程序执行时不知道改调用那个方法或者哪个方法执行后的结果,最终导致程序加载失败。
③、函数名冲突
一般是命名导致JS冲突。解决方法主要是查找在加载的js中是否具有相同命名的情况,然后修改命名

b.onload 事件冲突
如果在js中调用了window.onload = function(),同时在页面上又有body onload语句,会导致window.onload事件覆盖掉body onload事件而出现错误.
解决方法:attachEvent给onload添加所需运行的函数。

c . 浏览器不兼容问题,虽然这个不属于js冲突但是也常见的js的原因之一
①document.form.item 问题
(1)现有问题: 现有代码中存在许多document.formName.item("itemName") 这样的语句,不能在Fx 下运行
(2)解决方法: 改用document.formName.elements["elementName"]

②集合类对象问题
(1)现有问题: 现有代码中许多集合类对象取用时使用(),IE 能接受,Fx 不能。
(2)解决方法: 改用[] 作为下标运算。如:document.forms("formName") 改为document.forms["formName"]。又如:document.getElementsByName("inputName")(1) 改为document.getElementsByName("inputName")

③window.event
(1)现有问题: 使用window.event 无法在Fx 上运行
  (2)解决方法: Fx 的event 只能在事件发生的现场使用,此问题暂无法解决。可以这样变通:
  原代码(可在IE中运行):
代码:
<inputtype="button" name="someButton" value="提交
"onclick="javascript:gotoSubmit()"/>
...
<script language="javascript">
function gotoSubmit() {
...
alert(window.event);
// use window.event
...
}
</script>
新代码(可在IE和Fx中运行):
代码:
<input type="button" name="someButton" value="提交"
onclick="javascript:gotoSubmit(event)"/>
...
<script language="javascript">
function gotoSubmit(evt) {
evt = evt ? evt : (window.event ? window.event : null);
...
alert(evt);
// use evt
...
}
</script>
此外,如果新代码中第一行不改,与老代码一样的话(即gotoSubmit 调用没有给参数),则仍然只能在IE中运行,但不会出错。所以,这种方案tpl 部分仍与老 代码兼容。

④HTML 对象的id 作为对象名的问题
(1)现有问题 :在IE 中,HTML 对象的ID 可以作为document 的下属对象变量名直接使用。在Fx 中不能。
(2)解决方法 :用getElementById("idName") 代替idName 作为对象变量使用。

⑤用idName字符串取得对象的问题
(1)现有问题 :在IE中,利用eval(idName) 可以取得id 为idName 的HTML 对象,在Fx 中不能。
(2)解决方法 :用getElementById(idName) 代替eval(idName)。

⑥变量名与某HTML 对象id 相同的问题
(1)现有问题 :在Fx 中,因为对象id 不作为HTML 对象的名称,所以可以使用与HTML 对象id 相同的变量名,IE 中不能。
(2)解决方法 :在声明变量时,一律加上var ,以避免歧义,这样在IE 中亦可正常运行。
此外,最好不要取与HTML 对象id 相同的变量名,以减少错误。

⑦event.x 与event.y 问题
(1)现有问题 :在IE 中,event 对象有x, y 属性,Fx中没有。
(2)解决方法 :在Fx中,与event.x 等效的是event.pageX。但event.pageX IE中没有。
故采用event.clientX 代替event.x。在IE 中也有这个变量。
  event.clientX 与event.pageX 有微妙的差别(当整个页面有滚动条的时候),不过大多数时候是等效的。 如果要完全一样,可以稍麻烦些:
  mX = event.x ? event.x : event.pageX;
  然后用mX 代替event.x
(3)其它:event.layerX 在IE 与Fx 中都有,具体意义有无差别尚未试验。

⑧关于frame
(1)现有问题 :在IE中 可以用window.testFrame取得该frame,Fx中不行
(2)解决方法 :在frame的使用方面Fx和ie的最主要的区别是: 如果在frame标签中书写了以下属性:
  <frame src="xx.htm" id="frameId" name="frameName" />
那么ie可以通过id或者name访问这个frame对应的window对象,而Fx只可以通过name来访问这个frame对应的window对象,例如如果上述frame标签写在最上层的window里面的htm里面,那么可以这样访问
ie: window.top.frameId或者window.top.frameName来访问这个window对象
  Fx: 只能这样window.top.frameName来访问这个window对象
另外,在Fx和ie中都可以使用window.top.document.getElementById("frameId")来访问frame标签 ,并且可以通过window.top.document.getElementById("testFrame").src = xx.htm来切换frame的内容 ,也都可以通过window.top.frameName.location = xx.htm来切换frame的内容

⑨在Fx中,自己定义的属性必须getAttribute()取得

⑩在Fx中没有parentElement parement.children 而用
  parentNode parentNode.childNodes
  childNodes的下标的含义在IE和Fx中不同,Fx使用DOM规范,childNodes中会插入空白文本节点。
  一般可以通过node.getElementsByTagName()来回避这个问题。 当html中节点缺失时,IE和Fx对parentNode的解释不同,例如:
<form>  
<table> 
<input/> 
</table> 
</form>
  Fx中input.parentNode的值为form, 而IE中input.parentNode的值为空节点
  Fx中节点没有removeNode方法,必须使用如下方法node.parentNode.removeChild(node)

d . const 问题
(1)现有问题: 在IE 中不能使用const 关键字。如const constVar = 32; 在IE中这是语法错误。
(2)解决方法: 不使用const ,以var 代替。
  .. body 对象
  Fx的body在body标签没有被浏览器完全读入之前就存在,而IE则必须在body完全被读入之后才存在
  . url encoding
  在js中如果书写url就直接写&不要写&例如var url = xx.jsp?objectName=xx&objectEvent=xxx;
  frm.action = url那么很有可能url不会被正常显示以至于参数没有正确的传到服务器
一般会服务器报错参数没有找到,当然如果是在tpl中例外,因为tpl中符合xml规范,要求&书写为&
一般Fx无法识别js中的&

e . nodeName 和tagName 问题
(1)现有问题: 在Fx中,所有节点均有nodeName 值,但textNode 没有tagName 值。在IE 中,nodeName 的使用好象
有问题(具体情况没有测试,但我的IE已经死了好几次)。
(2)解决方法: 使用tagName,但应检测其是否为空。
  元素属性:IE下input.type属性为只读,但是Fx下可以修改
document.getElementsByName() 和document.all[name] 的问题
(1)现有问题: 在IE 中,getElementsByName()、document.all[name] 均不能用来取得p 元素(是否还有其它不能取的元素还不知道)。路径、引入顺序不对,或者页面加载时有冲突。
喜欢阅读
  • 都市之逆天剑仙

    都市之逆天剑仙

    九天剑仙跌落凡尘,戏纨绔,耍权贵,招美眉,引御姐,斗苍天,逆黄天,无“恶”不作,笑傲凡尘!

  • 夏の雑貨屋

    夏の雑貨屋

    无简介,此作品,仓促结稿,我不满意,所以简介也不写了

  • 紫帝弑天

    紫帝弑天

    进化为尊,血脉弑天,弹指间天地变色,刹那间星辰无光。一个少年从苍茫大山中走出,战万族,逆苍天,问世间谁能为敌!

  • 都市绝品狂婿

    都市绝品狂婿

    一觉醒来,发现自己身在洞房,还有一个大美女正在浴室里面洗澡,我该怎么办?

  • 富豪也疯狂

    富豪也疯狂

    一个医院的穷屌丝医生,遭遇同事欺凌,老婆背叛,人生几乎跌入低谷,在他得到家族财富之后,强势崛起,掌掴无耻老婆,碾压欺负他的同事,踏着一个一个对手的躯体,获得美女芳心,从此登上人生巅峰……

  • 捡尸人

    捡尸人

    我叫秦云,为了救治病危的母亲,我成为了一名捞阴人。那天,我挖出一具美丽的女尸,我兽性大发,将女尸……

  • 借婚试情:高冷首席宠上瘾

    借婚试情:高冷首席宠上瘾

    三年前失去了青梅竹马的恋人,伤心欲绝,一度发誓这辈子只会守候这一个女人,在父母几次的安排相亲自己都选择置之不理。但是,自己母亲重病,几番纠结之下,男主打算借婚,在两次巧遇林七后,将目标锁定,从此这场交易开始,但不知什么时候,这个鬼灵精怪的女孩子,将自己的整颗心都抓了去,吴珂成也无奈的宠溺着,敞开心扉,任由着林七在里面蹦蹦跳跳……

  • 鱼样

    鱼样

    世界上有很多事情我们根本说不清楚,比如诅咒和超自然力量。我不相信这些,但家里人一直都笃信,特别是我老爸。我还很小的时候他总是对我说,你也许就看得见拉的鱼样了。我好奇过追问过试图解答过,他却只告诉我这么多,就像一粒种子沉眠在发芽前,等待着破土而出。

  • 猜你喜欢
  • 热门推荐
  • 7.0兽王猎人精通敏捷
  • 周笔畅 愚公移山百度云
  • 欧陆风云4新教联盟漫画
  • 国家拟人段子中国美国
  • tar格式怎么解压
  • 邢台市未来5年规划地图
  • 迈瑞ipo撤材料
  • 黑色的小本本日剧资源
  • cgs引擎 传感器
  • 维京 第五季第11集
  • 大航海5 利润
  • 什么是历史虚无主义
  • 恒宇地产 永泰开工了吗
  • ie浏览器不能弹出窗口
  • 密室逃脱23攻略15
  • 染血将漫画的凯旋百度云
  • 2017款道奇公羊长角号
  • 骑士经理2完美人物搭配
  • 桜井ゆかり种子
  • nimfa pro
  • All Right Reserved 满意通