Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript-在不存在时更改样式_Javascript - Fatal编程技术网

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");