preventdefault(preventdefault stoppropagation)
为什么jquery中 e.preventDefault 这个方法不起作用
页面加载完成后(最下边那个JS)会直接提交表单到本页面,相当于刷新了一下,结果就一直提交
可以删除最下边的js
event.preventDefault()方法是用于取消事件的默认行为,但此方法并不被ie支持,在ie下需要用window.event.returnValue = false; 来实现。
用了Jquery的preventDefault阻止表单submit从此再也提交不了了!有没有同学有恢复的办法?
阻止表单提交可以直接返回 return false就可以了。不用preventDefault
e.preventDefault();是什么? 有什么用 ? 求举例说明
比如一个button放在一个form中,这个button的Default就是提交(submit),但如果你不想让他提交,就可以用e.preventDefault();
打个比方:
$(document).ready(function(){
????????
????????????$("button").click(function(e){
????????????????$("#show").fadeTo("fast",0);
????????????????e.preventDefault();
????????????});
?}
在一个form里有button,还有一个id=show的div(上点颜色),你可以保留e.preventDefault();和去掉e.preventDefault();试试看,效果不同的。
jquery 阻止默认行为
一、阻止事件的默认行为:? e.preventDefault()
eg:
function jqFun(){ ? ?//点击的时候a的class含有‘cur’时候阻止默认行为
$(‘.nav a’).on(‘click’,function(e){
if($(this).hasClass(‘cur)){
e.preventDefault();
}
})
}
return false 等效于同时调用e.preventDefault()和e.stopPropagation() ?。(即return false 除了阻止事件的默认行为之外 还会阻止事件冒泡)
二、query 中 ? length ?和size异同点
size()?方法返回被jquery选择器匹配的元素的数量。 ??$(selector).size()
length 属性包含query对象中的数目 ? $(selector).length
size()是方法,length是属性
如果只是获取元素的个数,两者的效果一样,但是如果获取的是字符串的长度就只能用length
size()在1.8版本以后被length取代了,因为length不需要返回一个函数调用,更加优秀。
三、运动的判断与停止 stop() ?:animated
stop() ?停止当前正在运行的动作
:animated ? 表示当前运动的状态
用$(:animated) 获取当前所有动画的元素
is(“:animated”) ?判断是否在运动 ? ?$(‘bbb’).is(“:animated”) ? 返回true ?or false
if(?!$(‘bbb’).is(“:animated”)){ ? ? //bbb元素在不运动的情况下执行...操作
//do something
}
动画函数 ?animate 函数
animate 方法执行css属性集的自定义动画的方法
语法如下:
$( selector ).animate( styles , speed , easing , callback )
styles ?参数为必选
speed , easing , callback ? 可选
preventDefault 和 return false 的区别
vent.preventDefault()
说明
该方法将通知 Web 浏览器不要执行与事件关联的默认动作(如果存在这样的动作)。例如,如果 type 属性是 "submit",在事件传播的任意阶段可以调用任意的事件句柄,通过调用该方法,可以阻止提交表单。注意,如果 Event 对象的 cancelable 属性是 fasle,那么就没有默认动作,或者不能阻止默认动作。无论哪种情况,调用该方法都没有作用。
return false;不需要event