使用javascript警告元素的类名

时间:2013-07-07 11:20:02

标签: javascript

我有一个元素,我想提醒这个元素的class属性我使用这个代码;

<li id="SSS" class="settings" onclick="alertClassName(this)">1111</li>

并在alertClassName函数中;

function changeClass(elem)
{
var x = $(elem.id);
alert(x.class) ;
}

警告不发现。

5 个答案:

答案 0 :(得分:2)

尝试使用className代替class

onclick="alertClassName(this)"

...

function alertClassName(elem) {
  alert(elem.className);
}

Reference

答案 1 :(得分:1)

您可以直接通过className属性访问类名(在这种情况下不需要jQuery):

function alertClassName(elem)
{
    alert(elem.className);
}

答案 2 :(得分:1)

首先,您必须决定一个函数名称(alertClassNamechangeClass)。我会使用alertClassName,因为它与问题标题匹配:

下面:

<li id="SSS" class="settings" onclick="alertClassName(this)">1111</li>

...您正在将对实际元素的引用传递给您的函数。 this DOM0处理程序属性中代码中的onxyz是指onxyz属性所在的元素。

这意味着您可以直接使用它:

function alertClassName(elem)
{
    alert(elem.className);
}

如果你想改变它:

<li id="SSS" class="settings" onclick="changeClass(this, 'foo')">1111</li>

function changeClass(elem, newClass)
{
    elem.className = newClass;
}

...会在点击元素时删除元素中的所有类,并添加foo类。

答案 3 :(得分:0)

您尝试激活不同的功能,然后激活您发布的内容)alertClassName而不是changeClass

以下是如何提醒然后更改元素类的示例。 (这是fiddle)。

代码:

<li id="SSS" class="settings" onclick="changeClass(this)">1111</li>

<script>
function changeClass(e)
{
    alert("Current Class:" + e.className);
    e.className = "Settings2";
    alert("Updated Class:" + e.className);
}
</script>

答案 4 :(得分:-2)

尝试:

alert($(this).attr('class'))