js兼容来自蓝色理想

出下面写写我这段时间的一些心得,主要介绍兼容IE和FireFox方面,Opera9.0前的版本好像N多东西不支持,暂时不介绍,Opera9.0以后的版本在Javascript解释方面和FireFox比较接近。
我介绍的都是一些细节方面的东西,侧重于写一些不常见的情况,想到新的我会持续补充:
1、创建一个Element,通用的写法为createElement("div")
   IE中也可以这样写createElement("<div style='color:#FFFFFF'>"),但Firefox不认
2、IE中的width、height与Firefox中概念不同,IE中width=FireFox中的width+2*borderWidth+2*Padding
   参见:http://help.powereasy.net/Template/WEB/1557.html
3、动态添加css代码
   IE:

复制内容到剪贴板
代码:
cssStr = "p { color:#FF0000;} a { font-size:9pt;}";
var style = win.document.createStyleSheet();
style.cssText = cssStr;
FireFox:
复制内容到剪贴板
代码:
cssStr = "p { color:#FF0000;} a { font-size:9pt;}";
var style = win.document.createElement("style"); 
style.type = "text/css"; 
style.innerHTML = cssStr; 
win.document.getElementsByTagName("HEAD").item(0).appendChild(style);
4、table在后面添加加行或列,通用写法insertRow(-1),insertCell(-1)
   IE中insertRow(),insertCell()这样写也可以,Firefox不认
5、警告对话框alert(),IE中书写时无参数则默认参数为空字符串,Firefox中则必须输入参数,传空参数则要写成alert("");
6、给element.style.width赋值必须写成24px,只写数字24的话,FireFox会不认,IE里都可以
7、在使用Element,并给其绑定了onclick、onmouseover、onmousedown、onmouseout等事件
    element.onclick = function() { alert("hello kitty"); };
   时,需注意
   将此元素添加到上级元素上时要用appendChild,不可以在上级中使用innerHTML操作,这样会使事件无效
8、获得事件和事件源
   IE:事件:window.event
      事件源:window.event.srcElement
   FireFox:事件:arguments.callee.caller.arguments[0]
              事件源:arguments.callee.caller.arguments[0].target
9、在选中区域粘贴HTML
   IE:
复制内容到剪贴板
代码:
var r = window.document.selection.createRange();
range.pasteHTML("HTML代码");
FireFox:
复制内容到剪贴板
代码:
var r = window.getSelection().getRangeAt(0);
var oFragment = r.createContextualFragment(“HTML代码”); 
r.deleteContents();
r.insertNode(oFragment);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值