1

您是否允许动态设置 HTML 元素的 ID - 即作为一个简单的示例,我可以这样做:

<a href="#" id="onOrOff()">Jazz</a>

和:

function onOrOff()
{
 document.write("someIDSetInMyCSSFile");    
}

我已经尝试过了,但它不起作用,所以只想检查我是否遗漏了其他一点。

谢谢。

4

2 回答 2

2

是的,但不是那样的。您将需要其他方式来访问它,例如:

var a = document.getElementsByTagName('a')[0];

然后:

a.id = "myDynamicID";
于 2012-11-28T00:35:10.577 回答
1

更新:为此解决方案创建了一个 jsFiddle:http: //jsfiddle.net/SdvA2/3/ 随意尝试!

假设你的 CSS 引用了#coolLink(和/或#uncoolLink),你可以尝试这样的事情:

<a href="#" id="uncoolLink" onclick="makeCool()">Jazz</a>

要动态打开 coolLink id 格式,您可以尝试使用以下函数:

<script>
function makeCool() {
  var element = document.getElementById("uncoolLink");
  element.id ="coolLink";
}
</script>

在此处查看更多信息:https ://developer.mozilla.org/en-US/docs/DOM/document.getElementById

但是,我强烈建议保持 id 不变并简单地更改类(并相应地调整你的 css)。

更进一步,我建议使用 jQuery,因为这将打开一个充满可能性的世界,改变你处理事情的方式,让生活变得更轻松,并保护你免受浏览器不兼容的影响。

于 2012-11-28T00:39:38.703 回答