例如:
就像我可以将this.href
用作锚元素一样,并且已经创建了一个自定义属性对话框。我无法使用该自定义属性对话框作为锚标记
this.dialog
无法正常工作。
工作:
<a onclick="this.href='anything'">anything</a>
不起作用:
<a onclick="this.dialog='anything'">anything</a>
注意: 对话框的工作方式与href相同,但是会在对话框中打开。
答案 0 :(得分:1)
更改元素的href
之所以可行,是因为仍然遵循默认行为(跟随链接)。
您引入的属性dialog
对默认行为没有影响。单击链接仍将使浏览器遵循其href
。
如果要更改链接的行为并单击以打开某种对话框,则需要做很多事情,而不仅仅是为元素的随机属性分配值。您需要取消默认设置,并在事件处理程序中定义自己的设置。
答案 1 :(得分:1)
您可以使用this
函数,而不是尝试将值推到setAttribute
上:
<a onclick="this.setAttribute('dialog', 'anything');">anythingAlso</a>
答案 2 :(得分:-1)
使用DOM访问HTML属性
element.hasAttribute('foo'); element.getAttribute('foo'); element.setAttribute('foo', value); element.removeAttribute('foo');