如何在javascript的for循环中增加相同标签添加onclick事件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在javascript的for循环中增加相同标签添加onclick事件相关的知识,希望对你有一定的参考价值。
<ul id="tags">
<li class="selectTag"><a onclick="selectTag('tagContent0',this)" href="javascript:void(0)">The Civil War</a> </li>
<li ><a onclick="selectTag('tagContent1',this)" href="javascript:void(0)">Photo Gallery</a> </li>
<li ><a onclick="selectTag('tagContent2',this)" href="javascript:void(0)">Blog</a> </li>
<li ><a onclick="selectTag('tagContent3',this)" href="javascript:void(0)">Link Library</a> </li>
<li ><a onclick="selectTag('tagContent4',this)" href="javascript:void(0)">Podcast</a> </li>
<li ><a onclick="selectTag('tagContent5',this)" href="javascript:void(0)">Assignment</a></li>
</ul>
<script type="text/javascript">
function selectTag(showContent,selfObj)
var tag = document.getElementsByTagName("li");
var taglength = tag.length;
for(i=1; i<taglength; i++)
tag[i].className = "";
selfObj.parentNode.className = "selectTag";
for(i=0; j=document.getElementById("tagContent"+i); i++)
j.style.display = "none";
document.getElementById(showContent).style.display = "block";
//]]>
</script>
tagContent5 下面的内弄不显示
那位大哥帮帮忙啊
var tag = document.getElementsByTagName("li");
var taglength = tag.length;
for(var i=0; i<taglength; i++)
tag[i].className = "";
selfObj.parentNode.className = "selectTag";
for(var i=0; j=document.getElementById("tagContent"+i),i<taglength; i++)
j.style.display = "none";
document.getElementById(showContent).style.display = "block";
//]]>
</script>
这个 可以的! 参考技术A function selectTag(showContent,selfObj)
var tag = document.getElementsByTagName("li");
var taglength = tag.length;
for(var i=0; i<taglength; i++)
tag[i].className = "";
selfObj.parentNode.className = "selectTag";
for(var i=0; j=document.getElementById("tagContent"+i),i<taglength; i++)
j.style.display = "none";
document.getElementById(showContent).style.display = "block";
//]]>
</script> 参考技术B 好像是tag.setAttribute("", "");吧 前面是名字 你这是onclick 后面是值
不过我一般都直接加html的。。 参考技术C 利用函数的隐含参数arguments,给函数传参;即:
for(var i=0;i<arguments.length;i++)
var tag = document.getElementsByTagName(arguments[i]);
如何在javascript中返回到for循环的顶部
【中文标题】如何在javascript中返回到for循环的顶部【英文标题】:how to return to top of for loop in javascript 【发布时间】:2011-04-25 00:53:21 【问题描述】:也许这是一个愚蠢的问题,但有没有办法返回到循环的顶部?
例子:
for(var i = 0; i < 5; i++)
if(i == 3)
return;
alert(i);
您对其他语言的期望是警报会触发 4 次,如下所示:
警报(0); 警报(1); 警报(2); 警报(4);
但是,当 i 为 3 时,该函数立即退出。什么给出了?
【问题讨论】:
你能举个“其他语言”的例子吗? 您认为哪些语言在循环中间返回会使循环继续?在我知道的任何语言中都不是这样。 C# 不会继续循环 - 一旦您执行 'return' 语句,函数会立即退出,就像在 javascript 中一样。 C# 还为您尝试完成的执行流程使用“继续”语句。 【参考方案1】:使用continue
而不是return
。
示例: http://jsfiddle.net/TYLgJ/
for(var i = 0; i < 5; i++)
if(i == 3)
continue;
alert(i);
如果您想在此时完全停止循环,您可以使用break
而不是return
。 return
语句用于从正在执行的函数中返回一个值。
编辑: @epascarello 以下 cmets 提供的文档链接。
continue
的文档:https://developer.mozilla.org/en/JavaScript/Reference/Statements/continue
return
的文档:https://developer.mozilla.org/en/JavaScript/Reference/Statements/return
【讨论】:
继续:developer.mozilla.org/en/JavaScript/Reference/Statements/… 返回:developer.mozilla.org/en/JavaScript/Reference/Statements/return @epascarello - 感谢您添加参考资料。 :o) 我猜我的也被否决了。反对者应该给出一个理由。【参考方案2】:对于它的价值,你也可以给它们贴上标签:
OUTER_LOOP: for (var o = 0; o < 3; o++)
INNER_LOOP: for (var i = 0; i < 3; i++)
if (o && i)
continue OUTER_LOOP;
console.info(o, ':', i);
输出:
0 : 0
0 : 1
0 : 2
1 : 0
2 : 0
【讨论】:
以上是关于如何在javascript的for循环中增加相同标签添加onclick事件的主要内容,如果未能解决你的问题,请参考以下文章
我可以在 JavaScript 的不同 for 循环中声明相同的变量两次吗? [复制]