a 标签 有个href 属性, 只要点击a 该href 属性就会触发,这样在我们不需要触发href的时候就会出现问题 看下面例子
function gotoVedioPaly(url,tragetA){
checkUser();// 验证用户登录
if($('#mid').val()==0){
showlogin();// 未登录弹出登录层页面
}else{
//location.href=url;
$(tragetA).attr('href',url);
}
}
html 代码:
<#if paper.isVedio??><a οnclick="gotoVedioPaly('/html/video/${paper.paperId}.html',this)" target="_blank"><em class="videoIcon"></em>视频</a></#if>
上例中如果a 有href 属性 在触发onclik时候如果用户未登录会在弹出层的同时打开一个新标签页面 这是因为a 的href属性触发了 且默认值为当前页面url
解决:
在不需要a 标签的时候让其失效即可 1 a href=“javascript:voide(0)” (I E7 和火狐浏览器不支持javascript:void(0)) 2 直接不加 href属性 在用的时候在加上 (如上例 )
jquery 方法:
"<a href=“www.baidu.com” id=“baidu”>百度</a>"
js方法:
$("#baidu").removeAttr("href");
$("#baidu").attr("href",url);