本文目录
JavaScript 的setAttribute问题
你自己应该已经了解了不同浏览器的不同语法,所需要的应该仅仅是判断浏览器名称和版本的代码。如下: 《script type="text/javascript"》 var Sys = {}; var ua = navigator.userAgent.toLowerCase(); window.ActiveXObject ? Sys.ie = ua.match(/msie ( : document.getBoxObjectFor ? Sys.firefox = ua.match(/firefox\/( : window.MessageEvent && !document.getBoxObjectFor ? Sys.chrome = ua.match(/chrome\/( : window.opera ? Sys.opera = ua.match(/opera.( : window.openDatabase ? Sys.safari = ua.match(/version\/( : 0; //以下进行测试 if(Sys.ie) document.write(’IE: ’+Sys.ie); if(Sys.firefox) document.write(’Firefox: ’+Sys.firefox); if(Sys.chrome) document.write(’Chrome: ’+Sys.chrome); if(Sys.opera) document.write(’Opera: ’+Sys.opera); if(Sys.safari) document.write(’Safari: ’+Sys.safari); 《/script》ps:兼容所有的浏览器是不可能的,这个世界上有数百种浏览器,并且还在不断出现新的浏览器,我们程序员没必要去适应那些极少有人用的浏览器,上述代码能判断市面上使用最多的五种浏览器。
原生js操作DOM元素的一些使用
方法一:
使用DOM.setAttribute("class","类名")
方法二:
DOM.classList.add("类名")
方法一给DOM元素添加类名会覆盖原有的类名
方法二 可以给DOM元素添加一个类名后 还可以在继续给DOM元素添加新的类名 并且不会覆盖已有的类名
概念:把要添加的节点添加到指定父级里面的最后面,所以也叫追加。 使用方式:fatherdom.appendChild( insertdom )。 兼容性:所有浏览器都支持此方法。
概念:把要插入的节点添加到指定父级里面的指定节点之前。 使用方式:fatherdom.insertBefore( insertdom,chosendom )。 兼容性:所有浏览器都支持此方法,但是值得注意的是,如果第二个参数节点不存在,在IE和Safari下会把要添加的节点使用appendChild()方法追加到指定父级中,而其他主流浏览器(Firefox、Chrome、Opera等)下会报错,所以在插入节点的时候,需要先判断第二个参数节点是否存在
效果
注意:很多人都认为设置disabled="true"是为启用,设置为“false”时为禁用,这是错的。