-
1.首先分析实现原理;然后分析要取出的对象,进行取出;再给对象绑定事件; 2.分析各种事件,并对事件进行函数封装; 3.块的里面的文字(状态、下)不见了:用负缩进把他们搞到窗口之外了,当代码注释使用。 4.在需要阻止冒泡的地方阻止事件冒泡: ul父元为div,点击li时希望ul隐藏,点击div时希望其显示,在点击li后会冒泡到div ,因而需要阻止冒泡; 注意区分onmousedown和onclick,只能阻止相对应类型事件。 重点:利用事件冒泡实现切换状态菜单;当一个块内包含众多事件时,必须要注意到事件冒泡的影响。 5.在其他任何地方点击,要使列表隐藏:document.onclick是代表在页面的任何地方点击事件。 document下的子元素还有一个onclick事件,所以要注意事件冒泡的影响;查看全部
-
offsetLeft与style.left的区别 offsetLeft 获取的是相对于父对象的左边距 left 获取或设置相对于 具有定位属性(position定义为relative)的父对象 的左边距 如果父div的position定义为relative,子div的position定义为absolute,那么子div的style.left的值是相对于父div的值, 这同offsetLeft是相同的,区别在于: 1. style.left 返回的是字符串,如28px,offsetLeft返回的是数值28,如果需要对取得的值进行计算, 还用offsetLeft比较方便。 2. style.left是读写的,offsetLeft是只读的,所以要改变div的位置,只能修改style.left 原理:拖动的时候,光标位置在哪,面板位置就在哪,面板的坐标通过左上角的点来确定。查看全部
-
1、任何能够跟着鼠标移动的东西 都要有一个前提:绝对定位 2、鼠标事件都是在浏览器窗口中的特定位置上发生的。这个位置信息保存在事件的clientX和clientY属性中。所有浏览器都支持这两个属性,它们的值表示事件发生时鼠标指针在视口中的水平和垂直坐标。不包括页面滚动的距离。 3、js ie10以下版本不支持document.getElementsByClassName 4、js封装getClass方法,获取class 5、实现随鼠标拖动,需要让窗口的坐标随着鼠标移动,鼠标的坐标保存在时间的clientX和clientY两个属性中。 6、onmousedown鼠标按下 窗口和鼠标的位置同步; element.style.left/top=clientX/Y+'px'; onmousemove当鼠标指针在元素内部移动时重复地触发查看全部
-
事件的clientX clientY 可以获得光标的位置查看全部
-
IE中的事件对象查看全部
-
事件对象查看全部
-
添加句柄查看全部
-
ie事件处理程序,attachEvent/detachEvent attachEvent(' onclick', func);//冒泡事件 detachEvent(' onclick', func); 类似dom2级 跨浏览器能力检测 1.addEventListener 2.attachEvent 3.用dom0级查看全部
-
dom2级事件处理程序,addEventListener/removeEventListener addEventListener('click',func,false);//true为捕获事件,false为冒泡事件 removeEventListener('click',func,false); 创建的dom2级事件必须用dom2级方法删除,此时不能用匿名函数 (dom2级方式)可以为同一事件添加多个处理程序,依次执行 ie不支持该方式查看全部
-
DOM0级事件处理程序 (用得比较多):先把元素取出来,然后为其属性添加一个事件的方法叫DOM0级处理程序。 它是一种较传统的方式:把一个函数赋值给一个事件处理程序的属性。 优点:简单,跨浏览器的优势 var btn2=document.getElementById("btn2");---先获取出元素,定义对象 //取得btn2按钮对象 btn2.onclick=function(){alert('这是通过DOM0级添加的事件!')}----让 事件以对象的属性 的形式出现。 //给btn2添加onclick属性 btn.onclick=null;//删除查看全部
-
事件捕获查看全部
-
事件流:描述的是从页面中接受事件的顺序 (IE:事件冒泡流 / Netscape事件捕获流)查看全部
-
事件冒泡查看全部
-
事件对象查看全部
-
stopPropagation()阻止冒泡;preventDefault()阻止默认查看全部
举报
0/150
提交
取消