一、IE内核浏览器:html标签<a>连接问题,javascript
- href="javascript:js_method();" 使用a标签进行调用函数,该写法在IE内核的浏览器中不兼容,传递this等参数的时候很容易出问题
- href="javascript:void(0);" onclick="js_method()" 这种方法是不少网站最经常使用的方法,也是最周全的方法,onclick方法负责执行js函数,而void是一个操做符,void(0)返回undefined,地址不发生跳转。并且这种方法不会像第一种方法同样直接将js方法暴露在浏览器的状态栏。
- href="javascript:;" onclick="js_method()" 这种方法跟上面这种相似,区别只是执行了一条空的js代码。
- href="#" onclick="js_method()" #是标签内置的一个方法,表明top的做用。因此用这种方法点击后网页后返回到页面的最顶端,这个与Javascript不要紧了, 并非没有连接,而是前往当前网页的顶部,若是你的网页比较长,须要向下拉很远的滚动条,这时候你若是想快速地返回到顶部,那么就用这个连接,点一下,网页的滚动条就到最上方了,这种使用#对连接进行标识的用法,叫作锚。
- href="#" onclick="js_method();return false;" 这种方法点击执行了js函数后return false,页面不发生跳转,执行后仍是在页面的当前位置。
综合上述,在a中调用js函数最适当的方法推荐使用方式:html
<a href=
"javascript:void(0);"
onclick=
"js_method()"
></a>
java
<a href=
"javascript:;"
onclick=
"js_method()"
></a>
web
<a href=
"#"
onclick=
"js_method();return false;"
></a>
浏览器
二、IE内核浏览器:标签<a>连接地址有中文时,访问时会报400,解决方法:使用js 方法encodeURIComponent()将中文进行转码函数
三、设置360浏览器使用急速模式,在页面增长标签<meta name="renderer" content="webkit">网站