-
在js逻辑运算中,0、""、null、false、undefined、NaN都会判为false,其他都为true。 几乎所有语言中||和&&都遵循“短路”原理,如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。 js也遵循上述原则。但是比较有意思的是它们返回的值。 代码:var attr = true && 4 && “aaa”; 那么运行的结果attr就不是简单的true或这false,而是”aaa” 再来看看||: 代码:var attr = attr || “”;这个运算经常用来判断一个变量是否已定义,如果没有定义就给他一个初始值,这在给函数的参数定义一个默认值的时候比较有用。查看全部
-
拖拽->鼠标跟随 1、绑定鼠标点击事件 2、获取鼠标坐标:clientX clientY (所有浏览器都支持此属性) 3、为容器元素绑定onmousemove (表明可拖拽元素只在容器元素内可拖拽) 4、将拖拽元素设置成绝对定位 5、在onmousemove中改变拖拽元素的left、top (注意left、top的算法) 6、设置left、top限定,禁止元素拖出窗口 7、当前浏览器窗口宽度document.documentElement.clientWidth或document.body.clientWidth 8、拖拽元素绑定onmouseup事件,在此事件中注销onmousemove事件,完成元素拖拽的释放效果 注意可以把left、top理解成x轴、y轴查看全部
-
IE下DOM事件 1、event.type 事件类型 2、event.srcElement获取事件作用目标 3、event.cancelBubble=true阻止冒泡 4、event.returnValue=false阻止事件默认行为查看全部
-
非IE下DOM事件 1、event.type 事件类型 2、event.target 获取事件作用目标 3、event.stopPropagation()阻止冒泡 4、event.preventDefault()阻止事件默认行为查看全部
-
浏览器兼容问题,JS事件单独封装2查看全部
-
通过HTML元素class获取ID查看全部
-
事件冒泡:即事件最开始由最具体的元素(文档中嵌套最深的那个节点)接收,然后逐级向上传播至最不具体的那个节点(文档)。 事件捕获:不太具体的节点应该更早接收到元素,而最具体的节点最后接收到事件。查看全部
-
event单独封装查看全部
-
阻止事件冒泡: event.stopProgagation(); 阻止事件默认行为: event.preventDefault();查看全部
-
kkkkk查看全部
-
跨浏览器事件封装: var eventUtil={} eventUtil.addHandler(btn3,'click',showMes); eventUtil.removeHandler(btn3,'click',showMes);查看全部
-
//跨浏览器事件处理程序: var eventUtil={ //添加句柄 addHandler:function(element,type,handler){ if(element.addEventListener){ element.addEventListener(type,handler,false); }else if(element.attachEvent){ element.attachEvent('on'+type,handler); }else{ element['on'+type]=handler;//JS中所有可以用“.”的,都可以用[]代替 } }, //删除句柄 removeHandler:function(element,type,handler){ if(element.removeEventListener){ element.removeEventListener(type,handler,false); }else if(element.detachEvent){ element.detachEvent('on'+type,handler); }else{ element['on'+type]=null;//JS中所有可以用“.”的,都可以用[]代替 } } }查看全部
-
DOM0级不需要on,attachEvent需要加on查看全部
-
IE浏览器事件处理程序: attachEvent(事件处理程序的名称,是安静处理程序的函数); detachEvent(事件处理程序的名称,是安静处理程序的函数);查看全部
-
DOM0级和DOM2级事件处理程序可以添加多个事件处理程序(按顺序执行),而HTML事件处理程序无法实现;查看全部
举报
0/150
提交
取消