JavaScript-在不存在时更改样式
我有一个函数,它可以在页面中的元素之间漫游并调整字体大小JavaScript-在不存在时更改样式,javascript,Javascript,我有一个函数,它可以在页面中的元素之间漫游并调整字体大小 function changebuttonsize (sz) { var z = document.body.getElementsByTagName("*"); for (var i=0; i<z.length; i++) { if (z[i].id=="BTSz") { z[i].style.fontSize = sz; } } } 功能更改按钮大小(sz) { var
function changebuttonsize (sz)
{
var z = document.body.getElementsByTagName("*");
for (var i=0; i<z.length; i++)
{
if (z[i].id=="BTSz")
{
z[i].style.fontSize = sz;
}
}
}
功能更改按钮大小(sz)
{
var z=document.body.getElementsByTagName(“*”);
对于(var i=0;i
function changebuttonsize (sz)
{
var z = document.body.getElementsByTagName("*");
for (var i=0; i<z.length; i++)
{
if (z[i].id=="BTSz")
{
z[i].style = 'font-size:'+sz+'px';
}
}
}
功能更改按钮大小(sz)
{
var z=document.body.getElementsByTagName(“*”);
对于(var i=0;i您是否考虑过使用jQuery?使用jQuery您可以选择DOM中的特定项(使用选择器),并向任何内容添加类。使用相同的“id”值一些元素的属性会导致各种各样的奇怪。我不确定它会导致你遇到的任何问题,但在寻找解决方案时,解决这个问题是个好主意
通常,“class”属性用于存储此类“trait”值。如果要为HTML5编码,还可以使用“data-”属性:
<input type='button' data-MikeD='BtNSz' ... >
您不应该对多个元素重复使用同一个“id”值。这是无效的,可能会导致各种问题。@pointy:好的,w3c同意您的意见。有没有其他方法让我标记感兴趣的元素?我想我可以在它们后面附加一些内容,并在前4个字符上搜索匹配项。一般做法是使用“类”属性,但使用HTML5,您可以将您自己发明的任意属性放在任何您想要的元素上。@pointy:太感谢了。我很难为情地说,我无法重现我原来的问题。如果您愿意回答这个问题,我会接受您的答案。事情进展顺利。刚刚发现Mozilla和Opera已经内置了getElementsBCyclassName,但IE没有。在web上找到了许多替换项,但参数不同。我很想忽略getElementsByClassName和所有标记的页面,但有更好的方法吗?嗯,我通常不喜欢将此作为主要响应,但老实说,像jQuery这样的库让这类事情变得容易多了。像这样的事情变得很简单最完全无痛的。
<input type='button' data-MikeD='BtNSz' ... >
var value = theButton.getAttribute("data-MikeD");