【问题标题】:Getting the class(s) of a div using jquery使用 jquery 获取 div 的类
【发布时间】:2009-10-08 18:19:12
【问题描述】:

嗯,我已经看到了这个问题here。但是m有点迷茫。提供了几种解决方案:-

  1. var div1Class = $('#div1').attr('className');

    这是一个被接受的解决方案,有 2 票赞成。

  2. var divClass = $("#div1").attr("class")

    这也得到了赞成票。

哪个是正确的?如果两者都正确,那么两者有什么区别?

【问题讨论】:

  • 如果你只想测试一个元素是否有特定的类名,可以考虑使用jQuery的is方法——$("#div1").is(".some-class")

标签: jquery css


【解决方案1】:

允许使用'class',jQuery会修复它, 但 jQuery 建议使用 'className' Attributes/attr

为避免与类定义冲突,DOM 将“class”属性重命名为“className”。 重命名为“htmlFor”的“for”属性也是如此。 (见here:1.6.2.命名例外)

【讨论】:

    【解决方案2】:

    没有 HTML 属性 className - 正确的代码是:

    var divClass = $("#div1").attr("class");
    

    className 是一个 Javascript DOM 属性,所以如果你不使用 jQuery,你可以这样做:

    var divClass = document.getElementById('div1').className;
    

    【讨论】:

    • 好吧,className 选项是我提供的问题链接上公认的解决方案!
    • 我一直使用“类”,但是是的,najmeddine 的回答似乎也是正确的(或者实际上,我们都是正确的):nabble.com/class-or-className-td5219071s27240.html
    • 是的,我猜他说得更正确..!! :-) 所以将他的答案标记为解决方案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-16
    • 2014-06-01
    • 1970-01-01
    • 2020-02-08
    • 1970-01-01
    • 2021-06-08
    • 2017-06-19
    相关资源
    最近更新 更多