通过CSS类区分元素

时间:2012-08-10 18:30:56

标签: javascript css prototypejs

我创建了一个代码来创建元素,每个元素都响应touchstart事件,稍后在代码中我可以将它们拖动到屏幕上。我想要的是根据他们拥有的CSS类来区分不同的元素。所有元素都有DRAG_CSS_SELECTOR类,但有些也有MOVE类或ROTATE类。

<div class="drag_rotate drag_css_selector"></div>
<div class="drag_move drag_css_selector"></div>

但是我找不到一种方法来编写代码哪个元素是哪个。它们都是元素。我试过了:

if (this.el.hasClassName(".drag_move")){
this.el = this.elMo;
}

但这没有结果

function DragController(){
  var dragElements = document.querySelectorAll(DRAG_CSS_SELECTOR),
      dragElementsLength = dragElements.length;

  for (var i = dragElementsLength - 1; i >= 0; i--){
    new DragController(dragElements[i]);    
  };
};

function DragController(element){
 this.el = element;
  this.el.addEventListener(START_EVENT, this, false);

  this.elRo = element;
  this.elMo = element;
};

1 个答案:

答案 0 :(得分:0)

你的常数是什么?

根据提供的信息,我唯一看错的是你如何使用hasClassName。它不接受选择器字符串 - 只是您正在检查的类的字符串名称。

if (this.el.hasClassName("drag_move")){
    this.el = this.elMo;
}