a href=#与 a href=javascript:void(0)的区别?
前天做的页面是一个iframe弹出窗口(说明一下:同事用js脚本开发出来的)里触发一个<a>链接的按钮可在该窗口上弹出一个div悬浮层。但是每次点击,div悬浮层就自动位于IE窗口的顶端,下面的iframe窗口包含的页面会自动上移,位置错乱了。
同事说主要是<a href='#' onclick='click事件名()'></a>这里的href='#'的原因,把它改成三个#就没问题了,即修改为<a href='###' onclick='click事件名()'></a>
嘿,还真好了。后来网上搜了一下估计是:
#包含了一个位置信息
默认的锚点是#top 也就是网页的上端
方法一: 所以为了避免这个位置问题有的人提倡采用的方式是javascript:void(0) 来表示一个死链接。
方法二: 但是也有的人不提倡采用这种方式,看这篇文章:a href=”javascript:void(0);” — avoid the void大概就明白啥回事了,^_^
<a href="#" onclick="doSomething();returnfalse;">Link</a>
或者
<script type="javascript">
function doSomething() {
//doSomething
returnfalse;
}
</script>
<a href="#" onclick="return doSomething();">Link</a>
以往大家不使用"#"的问题是,这将导致点击链接时页面跳回页面顶部,但通过 return false 语句将使得浏览器忽略链接的默认动作,从而避免了此问题。
我想为何同事要用三个#,大概也是让#包含的位置信息失去效果,但为何用三个而不是二个或四个之类的,就不太清楚了。下次有空再测一下。。。知道答案的朋友就给个评论里吧。先道声:谢谢了
相关文档:
下面两个方法实现了数组中去掉 前面 或者 后面的 重复项
去掉前面的重复项方法 把array [1, 2, 3, 1, 4, 5]去掉前面重复项 得到 [2, 3, 1, 4, 5].
function unique(a)
{
var r = new Array();
o:for(var i = 0, n = a.length; i < n; i++) {
for(var x = i + 1 ; x < n; x++)
{
......
Javascript 正则表达式使用手册
Javascript 2008-10-30 10:15 阅读97 评论0
字号: 大大 中中 小小
一.正则表达式匹配常用语法
“+”字符:规定表达式字符出现一次或多次。
“*”字符:规定表达式字符出现零次或多次。
“? ......
脚本中的事件有2种模型
1、 冒泡型事件:事件是按照从最特定的目标到最不特定的事件目标(document)的顺序依次触发。这是针对不同元素的同一事件类型
如:
<html onclick=”handleClick()”>
<head></head>
<body onclick=”handleClick()”>
<div ......
1. oncontextm 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table
2. <body onselectst> 取消选取、防止复制
3. 不准粘贴
4. 防止复制
5. <link > IE地址栏前换成自己的图标
6. <link   ......