Javascript 为什么getElementsByClassName不起作用?

Javascript 为什么getElementsByClassName不起作用?,javascript,css,Javascript,Css,我试图检测屏幕分辨率,然后设置多个屏幕分辨率的位置(如顶部、左侧),但它不起作用。 有人知道我的代码出了什么问题吗 CSS: javascript: var nHeight = screen.height; var nWidth = screen.width; if (nHeight ==714 && nWidth==1005) { //document.write("height:"+nHeight+" ,width="+nWidth+"<br>

我试图检测屏幕分辨率,然后设置多个屏幕分辨率的位置(如顶部、左侧),但它不起作用。 有人知道我的代码出了什么问题吗

CSS:

javascript:

  var nHeight = screen.height;
  var nWidth = screen.width; 
  if (nHeight ==714 && nWidth==1005)
 {
   //document.write("height:"+nHeight+" ,width="+nWidth+"<br>");
   var newsTarget = document.getElementsByClassName('Scrolloutside');
   newsTarget.style.top= "500px";
  }
var nHeight=screen.height;
var nWidth=屏幕宽度;
如果(nHeight==714&&nWidth==1005)
{
//文件。写入(“高度:“+nHeight+”,宽度:“+nWidth+”
”; var newtarget=document.getElementsByClassName('Scrolloutside'); newsTarget.style.top=“500px”; }
html:


新闻
用作

newsTarget[0].style.top= "500px";
getElementsByClassName()
方法以节点列表对象的形式返回文档中具有指定类名的所有元素的集合

NodeList对象表示节点的集合。可以通过索引号访问节点。索引从0开始,用作

newsTarget[0].style.top= "500px";
getElementsByClassName()
方法以节点列表对象的形式返回文档中具有指定类名的所有元素的集合


NodeList对象表示节点的集合。可以通过索引号访问节点。索引从0开始。getElementsByClassName()返回一个
节点列表
HTMLCollection
,它们都是元素列表,而不是单个元素。即使只有一个匹配的元素,它仍然返回一个只包含一项的列表。因此,您必须要么获取列表中的第一项,要么遍历整个列表(取决于代码需要什么)

从列表中获取第一项(如果可以假定只有一项具有类名):

或者遍历列表(如果可能有多个具有该类名的项):

var newtarget=document.getElementsByClassName('Scrolloutside');
对于(var i=0;i
document.getElementsByCassName()返回一个
节点列表
HTMLCollection
,它们都是元素列表,而不是单个元素。即使只有一个匹配的元素,它仍然返回一个只包含一项的列表。因此,您必须要么获取列表中的第一项,要么遍历整个列表(取决于代码需要什么)

从列表中获取第一项(如果可以假定只有一项具有类名):

或者遍历列表(如果可能有多个具有该类名的项):

var newtarget=document.getElementsByClassName('Scrolloutside');
对于(var i=0;i
在页面底部使用此选项

newsTarget[0].style.top= "500px";

在页面底部使用此选项

newsTarget[0].style.top= "500px";

没用了是吗?你确定它什么都没用吗?它可能会做一些你根本没有注意到的事情。我不知道你们为什么都把这件事搁置起来。代码行
newsTarget.style.top=“500px”显然是错误的,答案就是这样解释的。它可能会生成一个引用错误。这不是一个简单的印刷错误。这是一个编程错误,需要解释,因为有用的答案试图这样做。投票重新开放。我看不出有什么理由搁置这个问题。对少量代码的简单检查可以发现编程错误。@jfriend00我同意你的观点,并已重新打开。我想人们只是认为这个错误基本上是一个打字错误,而不是一些更复杂的事情。它不起作用是吗?你确定它什么都没用吗?它可能会做一些你根本没有注意到的事情。我不知道你们为什么都把这件事搁置起来。代码行
newsTarget.style.top=“500px”显然是错误的,答案就是这样解释的。它可能会生成一个引用错误。这不是一个简单的印刷错误。这是一个编程错误,需要解释,因为有用的答案试图这样做。投票重新开放。我看不出有什么理由搁置这个问题。对少量代码的简单检查可以发现编程错误。@jfriend00我同意你的观点,并已重新打开。我想人们只是认为这个错误基本上是一个打字错误,而不是更复杂的问题。
var newsTarget = document.getElementsByClassName('Scrolloutside');
for (var i = 0; i < newsTarget.length; i++) {
    newsTarget[i].style.top= "500px";
}
newsTarget[0].style.top= "500px";