Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.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添加的类上hasClass函数返回false //函数检查元素“elem”是否具有类名“cname” 函数类(elem,cname){ var classArr=elem.className.split(“”); 对于(类中的c) { 如果(classArr[c]=“测试”) 返回true; 其他的 返回false; } } //函数将类名“cname”添加到元素“elem” 函数addClass(元素,cname){ var classArr=elem.className.split(“”); 类阵列推送(cname); elem.className=classArr.join(“”); } window.onload=函数(){ //在这个函数中,您可以编写一些测试 var-box=document.getElementById('holder'); addClass(框“测试”); addClass(框“testtest”); 控制台日志(框); log(hasClass(框,“test”); }; /*#支架(试验用块)_Javascript - Fatal编程技术网

为什么在Javascript添加的类上hasClass函数返回false //函数检查元素“elem”是否具有类名“cname” 函数类(elem,cname){ var classArr=elem.className.split(“”); 对于(类中的c) { 如果(classArr[c]=“测试”) 返回true; 其他的 返回false; } } //函数将类名“cname”添加到元素“elem” 函数addClass(元素,cname){ var classArr=elem.className.split(“”); 类阵列推送(cname); elem.className=classArr.join(“”); } window.onload=函数(){ //在这个函数中,您可以编写一些测试 var-box=document.getElementById('holder'); addClass(框“测试”); addClass(框“testtest”); 控制台日志(框); log(hasClass(框,“test”); }; /*#支架(试验用块)

为什么在Javascript添加的类上hasClass函数返回false //函数检查元素“elem”是否具有类名“cname” 函数类(elem,cname){ var classArr=elem.className.split(“”); 对于(类中的c) { 如果(classArr[c]=“测试”) 返回true; 其他的 返回false; } } //函数将类名“cname”添加到元素“elem” 函数addClass(元素,cname){ var classArr=elem.className.split(“”); 类阵列推送(cname); elem.className=classArr.join(“”); } window.onload=函数(){ //在这个函数中,您可以编写一些测试 var-box=document.getElementById('holder'); addClass(框“测试”); addClass(框“testtest”); 控制台日志(框); log(hasClass(框,“test”); }; /*#支架(试验用块),javascript,Javascript,类是通过JS addClass函数添加的,但是 我这里的问题是为什么在添加类之后console.log(hasClass(框,'test'))log为false.*/您还需要将此元素添加到body中。将onload方法更改为 <script> // function checks that element "elem" has class name "cname" function hasClass(elem, cname) { var classArr = elem.classN

类是通过JS addClass函数添加的,但是
我这里的问题是为什么在添加类之后console.log(hasClass(框,'test'))log为false.*/

您还需要将此元素添加到body中。将onload方法更改为

<script>
// function checks that element "elem" has class name "cname"

function hasClass(elem, cname) {
var classArr = elem.className.split(" ");
    for(c in classArr)
      {
          if(classArr[c] === "test")
              return true;
          else
              return false;
      }
}



// function adds class name "cname" to element "elem"
function addClass(elem, cname) {
   var classArr = elem.className.split(" ");
   classArr.push(cname);
   elem.className = classArr.join(" ");
 }

window.onload = function() {
// inside this function you can write some tests
    var box = document.getElementById('holder');
    addClass(box, 'test');
    addClass(box, 'testtest');
    console.log(box);
    console.log(hasClass(box, 'test'));     
};
</script>

/*<div id="holder">#holder<br>(block for tests)</div>
还更新了


@KhimanandaOli无法在此处访问您的链接,您可以创建一个小提琴吗?您不应该为数组使用for-in循环。
window.onload = function() {
// inside this function you can write some tests
    var box = document.getElementById('holder');
    document.body.appendChild(box );    
    addClass(box, 'test');
    addClass(box, 'testtest');
    console.log(box);
    console.log(hasClass(box, 'test'));     
};
function hasClass(elem, cname) {
var classArr = elem.className.split(" ");
  console.log(classArr);
    for(c in classArr)
      {
        console.log(classArr[c]);
          if(classArr[c] === "test")
              return true;


      }
  return false;
}