求解为什么class会引发js

网络老男孩了 2015-08-03 02:59:21
<!--------------------------------------范例A------------------------------------------->
页面
<script src="/js/comment.js"></script>

<ol><li><a href="javascript:;" class="J_sub_login">登 录</a></li></ol>
问题是为什么点击登录链接,会直接执行【comment.js】的代码,百思不得其解.class能执行js代码???

comment.js
//登录
$('.J_sub_login').click(function(){
var username = $.trim($('#username').val());
var password = $.trim($('#password').val());
var captcha = $.trim($('#J_captcha').val());
var remember = $.trim($('#remember').val());
var return_url = unescape($.trim($('#url').val()));
var url = '/check.asp?action=check';
var th = $(this);
if(return_url==''){
layer.msg('参数出错',2,3);
return false;
}
if(username==''){
$.layer({
shade : [0.4 , '#000' , false],
area : ['auto','auto'],
title : false,
closeBtn:false,
time : 2,
dialog : {msg:'请输入手机号',type : 3}
});
return false;
}
if(password==''){
$.layer({
shade : [0.4 , '#000' , false],
area : ['auto','auto'],
title : false,
closeBtn:false,
time : 2,
dialog : {msg:'请输入密码',type : 3}
});
return false;
}
th.removeClass('J_sub_login');
th.text('正在登录...');
$.post(
url,
{username:username,password:password,captcha:captcha},
function(result){
if(result == '1'){
window.location.href='/userlist.asp';
return false;
} else {
//window.location.href='/userlist.asp';
th.addClass('J_sub_login');
th.text('登录'+result);
layer.msg(result,2,3);
return false;
}
},'text');
});
<!--------------------------------------范例B------------------------------------------->
前台页面
<script type="text/javascript" src="js/sliderAll.js"> </script>
<div class="mega-menu-close"></div>
问题是为什么点击div,会直接执行【 bindMegaMenuCloseButtonClick】的代码,百思不得其解.class能执行js代码???
js页面
function bindMegaMenuCloseButtonClick(){
$(".mega-menu-close").click(function(){
$(".mega-menu-on>div.mega-menu-container").each(function(){
$(this).fadeOut(200,function(){
$(this).parent(".mega-menu-on").removeClass("mega-menu-on").find(".mega-menu-content-on").removeClass(".mega-menu-content-on");
$(this).css("display","")
});
$(this).siblings(".header-title").find(".arrow-selected").fadeOut(200,function(){$(this).css("display","")
})
})
})
}
...全文
112 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
hch126163 2015-08-03
  • 打赏
  • 举报
回复
$('.J_sub_login').click( 就是
纯洁袜子 2015-08-03
  • 打赏
  • 举报
回复
引用 4 楼 wangluonanhai 的回复:
不好意思,不懂JQuery,麻烦详细说说,JQuery怎么把class绑定点击事件,
范例A中这一段$('.J_sub_login').click(function(){...})就是给class为J_sub_login的元素绑定了一个点击事件,当用户点击这个元素的时候,就会触发这个事件,并执行里面的内容,范例B也是一样的。 其实你可以去看看jquery教程,里面都有很详细的说明。 http://www.w3school.com.cn/jquery/jquery_ref_events.asp
网络老男孩了 2015-08-03
  • 打赏
  • 举报
回复
不好意思,不懂JQuery,麻烦详细说说,JQuery怎么把class绑定点击事件,
网络老男孩了 2015-08-03
  • 打赏
  • 举报
回复
<ol><li><a href="javascript:;" class="J_sub_login">登 录</a></li></ol> 没有绑定什么事件啊,是在哪里绑定的? 是不是在【jquery-1.7.2.min.js】里面绑定的
纯洁袜子 2015-08-03
  • 打赏
  • 举报
回复
因为这些class元素都绑定了点击事件,你点击也就触发了事件,触发了事件也就执行了js内容
网络老男孩了 2015-08-03
  • 打赏
  • 举报
回复
补充都有调用 【<script src="/js/jquery-1.7.2.min.js"></script>】

87,885

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧