扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:ideawu 来源:CSDN 2008年3月17日
关键字: 跨浏览器 JavaScript java
通过元素(Element)的setAttribute()方法设置style属性:
var testdiv = document.getElementById("testdiv");
testdiv.setAttribute("style", "font-size:34px;color:red;");
除了IE(Microsoft Internet Explorer),这种方法在当前其它浏览器上都行得通。为了照顾IE,我们可以使用设置不标准的属性---元素style对象的cssText属性。尽管这个属性不是标准的,但得到了广泛的支持(除了Opera):
var testdiv = document.getElementById("testdiv");
testdiv.style.cssText = "font-size:34px;color:red;";
使用Firefox和Safari之类的浏览器,可以通过元素(Element)的setAttribute()方法设置class属性:
var testdiv = document.getElementById("testdiv");
testdiv.setAttribute("class", "HeaderBar");
为了照顾IE这个异类,它只认识className属性---在IE中className = class,其它大多数浏览器都忽略className属性。你可以这样做:
var testdiv = document.getElementById("testdiv");
testdiv.setAttribute("class", "HeaderBar");
testdiv.setAttribute("className", "HeaderBar");
上面的代码已经在Mozilla Firefox 1.5.0.2,Opera 8.54,Konqueror 3.5.2测试通过。
注意document.createElement()和<Element>.setAttribute()方法的顺序:
var button = document.createElement("input");
button.setAttribute("type", "submit");
var testdiv = document.getElementById("testdiv").appendChild(button);
标准的做法是:
var testdiv = document.getElementById("testdiv");
testdiv.setAttribute("onclick", "doFoo();");
除了IE,上面的代码在所有的当前浏览器中都能工作。在IE中必须使用点词法来引用所需的事件处理程序:
var testdiv = document.getElementById("testdiv");
testdiv.onclick = function(){doFoo();};
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者