两段代码很相似,大家猜猜他们的产生的效果如何?
第一段:<script type="text/javascript">
function getLinks() {
var a = document.getElementsByTagName("a"); // 得到页面所有的超链接
return a;
}
function onclickEventHandler(oTarget) {
if (oTarget.addEventListener) {
oTarget.addEventListener("click", function() {clickIt(oTarget);}, false);
} else if (oTarget.attachEvent) {
oTarget.attachEvent("onclick", function() {clickIt(oTarget);});
} else {
oTarget["onclick"] = clickIt(oTarget);
}
}
function clickIt(obj) {
var a = getLinks();
for (var i = 0; i < a.length; i++) {
if (obj == a[i]) {
a[i].style.color = "#7F007F";
} else {
a[i].style.color = "blue";
}
}
}
function pageOnload() {
var a = getLinks();
if (a.length) {
for (var i = 0; i < a.length; i++) {
var oTarget = a[i];
onclickEventHandler(oTarget);
}
}
}
</script>
第二段:<script type="text/javascript">
function getLinks() {
var a = document.getElementsByTagName("a"); // 得到页面所有的超链接
return a;
}
function onclickEventHandler(oTarget, fun) {
if (oTarget.addEventListener) {
oTarget.addEventListener("click", fun, false);
} else if (oTarget.attachEvent) {
oTarget.attachEvent("onclick", fun);
} else {
oTarget["onclick"] = fun;
}
}
function clickIt(obj) {
var a = getLinks();
for (var i = 0; i < a.length; i++) {
if (obj == a[i]) {
a[i].style.color = "#7F007F";
} else {
a[i].style.color = "blue";
}
}
}
function pageOnload() {
var a = getLinks();
if (a.length) {
for (var i = 0; i < a.length; i++) {
var oTarget = a[i];
onclickEventHandler(oTarget, function() {clickIt(oTarget);});
}
}
}
</script>下面是页面html代码:<html>
<body onload="pageOnload();">
<a>第一个链接</a>
<a>第二个链接</a>
<a>第三个链接</a>
</body>
</html>
第一段:<script type="text/javascript">
function getLinks() {
var a = document.getElementsByTagName("a"); // 得到页面所有的超链接
return a;
}
function onclickEventHandler(oTarget) {
if (oTarget.addEventListener) {
oTarget.addEventListener("click", function() {clickIt(oTarget);}, false);
} else if (oTarget.attachEvent) {
oTarget.attachEvent("onclick", function() {clickIt(oTarget);});
} else {
oTarget["onclick"] = clickIt(oTarget);
}
}
function clickIt(obj) {
var a = getLinks();
for (var i = 0; i < a.length; i++) {
if (obj == a[i]) {
a[i].style.color = "#7F007F";
} else {
a[i].style.color = "blue";
}
}
}
function pageOnload() {
var a = getLinks();
if (a.length) {
for (var i = 0; i < a.length; i++) {
var oTarget = a[i];
onclickEventHandler(oTarget);
}
}
}
</script>
第二段:<script type="text/javascript">
function getLinks() {
var a = document.getElementsByTagName("a"); // 得到页面所有的超链接
return a;
}
function onclickEventHandler(oTarget, fun) {
if (oTarget.addEventListener) {
oTarget.addEventListener("click", fun, false);
} else if (oTarget.attachEvent) {
oTarget.attachEvent("onclick", fun);
} else {
oTarget["onclick"] = fun;
}
}
function clickIt(obj) {
var a = getLinks();
for (var i = 0; i < a.length; i++) {
if (obj == a[i]) {
a[i].style.color = "#7F007F";
} else {
a[i].style.color = "blue";
}
}
}
function pageOnload() {
var a = getLinks();
if (a.length) {
for (var i = 0; i < a.length; i++) {
var oTarget = a[i];
onclickEventHandler(oTarget, function() {clickIt(oTarget);});
}
}
}
</script>下面是页面html代码:<html>
<body onload="pageOnload();">
<a>第一个链接</a>
<a>第二个链接</a>
<a>第三个链接</a>
</body>
</html>
解决方案 »
- jquery.validate问题
- 这段代码杂了,就是出错。。。悲剧。
- 领导要求复杂的文本框
- 未何设置了position:absolutes 的<ul> 该<ul>还是会运动
- 不要给我现成的代码,只要说名这个例子哪里有错,为什么不能拖动图片
- 在线等:在地址栏输入地址,能否将当前打开的网页变成没有地址栏,状态栏等。
- 在线等待:怎样从checkbox是否选取来得到是哪行我要删除的数据啊!
- 谁能帮我实现这样的效果,可能比较简单!!!!!!!!
- 能不能让一个输入框隐藏,然后用另一个动作来让它显现,不要放在层里??
- 怎么做呢
- 请教关于使用COOKIES 做转向的问题
- 关于GOOGLE MAP API中GInfoWindowOptions实例化的疑问!
var oTarget = a[i];
onclickEventHandler(oTarget, function() {clickIt(oTarget);});
})(i);
ECMAScript虚拟机有较深的研究才成。我的水平有限,还停留在感性
认识阶段,大家可以搜索下周爱民的文章,讲的还是比较详细的
而代码二,其实复制了 a[3],但 a[3],恰恰不存在,即 undefined!应该是这样,先去吃饭,回来再仔细琢磨一下!