检索元素的类名和 id 时,我总是未定义
When retrieving the class name and id of an element I always get undefined
我正在使用此代码进行调试...
$(document).ready(function() {
$('.slider').slider();
});
$.fn.slider = function() {
return this.each(function() {
var $el = $(this);
var dragging = false;
var startX = $el.offset().left;
var startL = 0;
$el.mousedown(function(ev) {
dragging = true;
startX = ev.clientX;
startL = $(this).css('left');
alert("class: "+ $el.className +" id: " + $el.id);
});
$(document).mousemove(function(ev) {
if (dragging) {
var newLeft = parseInt(startL) + (ev.clientX - startX);
$el.css('left', newLeft );
}
}).mouseup(function() {
dragging = false;
});
});
}
注:alert("class: "+ $el.className +" id: " + $el.id);
它总是为$el.className
和$el.id
返回"未定义"。
如何让它返回我点击的元素 (div) 的 id 和类?
我已经尝试了许多$el
和.id
的变体,但似乎没有任何效果。
你混合了jQuery和vanilla javascript属性。 className
是香草,$(this)
是一个jQuery对象。
任一更改
$el.className
自
$el.attr('class')
或者如果你想使用className
:
var $el = $(this);
自
var $el = this;
(尽管这也需要更改代码的其他部分)
尝试如下:
$(function() {
$("div").click(function() {
var name = this.name;
var cls = this.className;
var id= this.id;
alert("Name: " + name + " / Class: " + cls + " / Id: " + id);
});
});
相关文章:
- 无法获取属性'Id'使用Knockout.js的未定义或空引用API
- Angular2-TypeError:无法读取属性'Id'(Typescript)中未定义的
- 快速会话 无法设置未定义的属性“id”
- JS在隐藏未定义的值后仅从数组中返回第一个id的值
- "无法读取属性'id'未定义的“;解析工厂中声明的数组时
- 在onChange事件中未定义id
- 未捕获的引用错误: 未定义导出 ID
- Angular JS TypeError:无法读取路由上未定义的属性“id”
- 获取 Firebase 推送对象的 ID 未定义
- 当我尝试获取span的父ID时,我得到了未定义的值
- jQuery 可放置元素 id 未定义
- 数据 ID 一直未定义返回
- 当 ID 从 PHP 变量传递时,JavaScript 中的未定义 ID
- DatePicker:无法设置属性'currentDay'当有多个数组id时,为未定义
- querySelector在尝试访问作为元素ID的数值时返回未定义的字符串
- jQuery中显示id未定义时出错
- 无法获取属性'id'的未定义引用或null引用
- FB ID返回为未定义
- getElementByClassName返回'未定义',但它对Id有效
- 未定义ID/No操作Jquery