关于html:对于javascript中的循环帮助?

For loop help in javascript?

本问题已经有最佳答案,请猛点这里访问。

JS代码

1
2
3
4
5
6
7
8
9
10
<script type="text/javascript">
    var list = document.getElementsByClassName('sortByTestName');

    for (var i = 0; i < list.length; i++) {
        var current = list[i].innerHTML;
        list[i].onclick = function() {
            window.alert(current);
        }

    }

好的,这里的代码通过class name遍历html文件查找元素,然后我做了一个for loop。 所有元素都显示在屏幕上,当点击一个元素时,我想提醒被点击的元素的值。 例如,假设元素是数字1-10。 它们在页面中垂直显示,当用户点击说3号浏览器时,应在框3中发出警告。设计/显示方面的所有内容都有效。 我遇到的问题是,当我点击任何元素时,最后一个元素总是显示出来。 就我们的数字示例而言,如果用户点击数字5,则显示最后一个数字10。 如果用户点击任何号码,则显示最后一个号码。 我相信这是因为在点击某些内容之前整个循环正在执行。 我想知道如何解决这个问题。


<但是>

1
2
3
4
5
6
7
var list = document.getElementsByClassName('sortByTestName');

for (var i = 0; i < list.length; i++) {
  list[i].onclick = function() {
    window.alert(this.innerHTML);
  }
}
1
2
3
div:hover {
  cursor: pointer;
}
1
2
3
4
  <span>Here is some inner html</span>


  <span>Some more inner html</span>

<铅>