美术馆案例中,需要将“增加一个img标签,放入大图片”这样一个函数封装,但是在调用的时候需要传参。
<script type="text/javascript"> onload = function () { var li = document.getElementsByTagName("li");
//下面封装了imgClick函数,带有一个参数n var imgClick = function (n) { var imgLarge = document.createElement("img"); dv.appendChild(imgLarge); imgLarge.src = "source/image/0" + (n + 1) + ".jpg"; }
//就是下面这个 li[0].onclick = function () { imgClick(0); } } </script>
1.本来想用li[0].onclick=imgClick(0);结果页面没点小图片,大图片就出来了,原因是多加了括号,就相当于使用了函数,再把返回值给了li[0].onclick.
2.但是去掉括号后,就不能传参了。
3.百度后,使用上面的代码,
li[0].onclick = function () { imgClick(0); }
加了个function(){}就可以了。