JavaScript的事件绑定(方便不支持js的时候)_javascript技巧
其中popUp这个函数是自定义的,新打开一个窗口来限制URL中的网页。但是如果当客户端不支持时,那这个网页就不能正常工作了。所以我们在这样做的使用,也考虑到更多,使用如下的代码就会显得更加合适。
接着,作者以CSS为例子。在我们使用CSS的过程中,我们发现,除了我们使用了把CSS文件给加载进来外,我们没有在我们的网页内容中加入任何css相关的代码,这样就能很好的把structure和style分开了,即我们的css的代码没有侵入我们的主要代码里面。这样就算客户端不知道css,但是我们的主要内容客户还是可以看到的,我们的内容结构也能在客户那里显示出来。所以JavaScript相当于behavior层,css相当于presentation层。JavaScript也能像CSS一样做到没有侵入性。下面是书上的一个例子。
上面这段代码已经能保证在客户端不支持JavaScript的情况下仍然可以正常的工作,但是上面的代码中出现了onclick这样的event handler。所以现在我们使用像CSS中的方式来完成我们所要的功能。如下:
这样,我们能在这个页面加载完成的时候,执行window.onload中,来检测哪些是使用了class,然后统一使用popUp的方法。如下代码
var links = document.getElementsByTagName("a");
for (var i=0 ; i
links[i].onclick = function() {
popUp(this.getAttribute("href")); //Attention use this in this place. Because this is equals onClick = "popUp(this.href)"
//so we cann't use links[i].
return false;
}
}
}
这样就能更少地侵入我们html代码了。
最后,作者讲了我们要做到向后兼容和JavaScript的最小化。向后兼容,我们可以使用类似if(document.getElementById)来测试这个方法时候存在,存在了才能使用。JavaScript代码的最小化主要是为了减少JavaScript,这样能加快我们网页的加载。
下面我在看书的时候碰到不懂的问题,希望大虾们能帮忙解决一下。
对于
推荐阅读
-
JS中动态添加事件(绑定事件)的代码_javascript技巧
-
JS、CSS以及img对DOMContentLoaded事件的影响_javascript技巧
-
js创建一个input数组并绑定click事件的方法_javascript技巧
-
js利用事件的阻止冒泡实现点击空白模态框的隐藏_javascript技巧
-
基于Unit PNG Fix.js有时候在ie6下不正常的解决办法_javascript技巧
-
js阻止事件追加的具体实现_javascript技巧
-
js中的eventType事件及其浏览器支持性介绍_javascript技巧
-
动态的绑定事件addEventListener方法的使用_javascript技巧
-
js 事件处理函数间的Event物件是否全等_javascript技巧
-
js中的eventType事件及其浏览器支持性介绍_javascript技巧