`
liuleigang
  • 浏览: 54697 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

setCapture 使用方法

    博客分类:
  • AJAX
阅读更多
setCapture 使用方法
setCapture 可以捕获到 移动到浏览器外的鼠标事件。

例如拖动过程中,即使鼠标移动到了浏览器外,拖动程序依然可以执行!

作用就是把 把鼠标事件 捕获到 当前文档指定的对象!

setCapture捕获以下鼠标事件:onmousedown、onmouseup、onmousemove、onclick、ondblclick、onmouseover和onmouseout。

使用方法:
currentObj.setCapture();

在拖放结束后,应当使用releaseCapture() 来释放鼠标,使用方法: currentObj.releaseCapture();

这是ie 的专有方法,如果要兼容ff ,就要使用captureEvents 和 releaseEvents

使用方法
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
window.releaseEvents(Event.MOUSEMOVE|Event.MOUSEUP);

一般来说,当拖动过程中,使用事件冒泡,直接为 document.onmouseover 就可以达到ff 下的效果,不必使用captureEvents
releaseEvents 使用方法 window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP); window.releaseEvents(Event.MOUSEMOVE|Event.MOUSEUP); 一般来说,当拖动过程中,使用事件冒泡,直接为 document.onmouseover 就可以达到ff 下的效果,不必使用captureEvents

============
今天测试FF4,有tab不能正常切换。
调查发现调用了setCapture方法,
在firefox4下起作用了。

改为
if(window.captureEvents) {
    window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP); 
} else if(dragObject.setCapture) {
    dragObject.setCapture();
}
分享到:
评论

相关推荐

    JS拖动技术 关于setCapture使用

    在实现拖动效果时,`setCapture` 和 `releaseCapture` 是两个重要的方法,它们主要用于处理鼠标事件的捕获与释放。下面将详细介绍这两个方法以及如何在拖动技术中应用它们。 `setCapture` 方法是HTML元素的一个属性...

    setCapture和releaseCapture的小应用

    前几天,从网上看到setCapture方法,了解了一下,大体是这样的意思,当在IE文档某个区域中使用了这个方法,并且写了onclick或者 onmouse***等有关的鼠标事件方法,那么它就会监视相应的鼠标操作,即使你的鼠标移出了IE...

    HTML中setCapture、releaseCapture 使用方法浅析

    `setCapture`方法允许开发者将鼠标事件的处理权“捕获”到一个特定的DOM元素。一旦元素捕获了事件,所有的鼠标事件(包括`onclick`, `ondblclick`, `onmousedown`, `onmouseup`, `onmouseover`, `onmouseout`)都会...

    VC++鼠标捕捉的使用方法

    在Windows程序设计中,捕获...以上就是关于在VC++中使用`SetCapture()`和`ReleaseCapture()`进行鼠标捕捉的基本介绍。通过掌握这些知识,开发者可以更灵活地控制应用程序与用户的交互,实现更多复杂的用户界面功能。

    JS setCapture 区域外事件捕捉

    当使用setCapture方法将事件捕获后,该方法会将鼠标事件的监听器应用到整个文档的范围内,这意味着在这个对象之外发生的鼠标事件也将被捕获。但是,当不再需要事件捕获的时候,必须调用releaseCapture方法来释放这个...

    js中call,apply,setCapture,releaseCapture的使用.pdf

    `setCapture`方法使得指定元素能够捕获所有的鼠标事件,即使鼠标离开了该元素,事件仍然会触发,直到调用`releaseCapture`方法释放捕获。这对于实现拖拽等交互功能非常有用,避免了鼠标在拖动过程中因为移动到其他...

    IE8利用自带的setCapture和releaseCapture解决iframe的拖拽事件方法

    本篇文章将深入探讨如何使用IE8浏览器内置的`setCapture`和`releaseCapture`方法来解决iframe中的拖拽事件问题。 首先,我们要了解在现代浏览器(如Chrome)中,拖拽事件通常可以通过监听`mousedown`、`mousemove`...

    JS高级拖动技术 setCapture,releaseCapture

    在JavaScript中,`setCapture` 和 `releaseCapture` 是两个高级拖动技术中涉及的关键方法,主要用于处理鼠标事件的捕获。这两个方法主要用于在复杂的用户交互场景,特别是拖放操作时,确保事件处理的准确性和效率。...

    Javascript 事件捕获的备忘(setCapture,captureEvents)

    本文主要探讨的是事件捕获机制,以及与之相关的`setCapture`和`captureEvents`方法,它们允许开发者控制事件的传播路径。 事件捕获是事件模型的一部分,它描述了事件如何在DOM树中从根节点向下传播到目标节点的过程...

    HTML中的setCapture和releaseCapture使用介绍

    `setCapture`方法的主要作用是将后续的所有鼠标事件(如`onmousedown`, `onmouseup`, `onmousemove`, `onclick`, `ondblclick`, `onmouseover`, `onmouseout`)绑定到调用它的元素。这意味着即使鼠标移动到其他元素...

    javascript 常用方法及技巧

    event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键 event.keyCode event.shiftKey event.altKey event.ctrlKey 事件返回值 event.returnValue 鼠标位置 event.x event.y ...

    JavaScript中Date.toSource()方法的使用教程

    在实际应用中,Date.toSource()方法很少直接使用,因为创建日期对象通常会采用直接调用构造函数的方式,即new Date(),然后我们可以使用一系列的方法如getYear(), getMonth(), getDate(), etc.来分别获取年、月、日...

    js实现层的拖曳,很实用的哦

    - 使用`setCapture`方法确保在元素上进行的任何鼠标操作都会被捕获到,即使鼠标离开了该元素也是如此。 - 通过计算鼠标当前位置与鼠标按下时的位置差值,动态调整元素的位置。 - 为了保证元素始终处于最上层,暂时...

    Javascript DIV msgbox

    "prototype.js"是一个JavaScript库,可能是Prototype.js,它提供了一系列方便的DOM操作方法和类扩展,帮助开发者更高效地编写JavaScript代码。"mask.js"则是具体的对话框功能实现,可能包括了显示、隐藏对话框以及与...

    分享一个原生的JavaScript拖动方法

    2. setCapture方法:此方法用于捕获当前鼠标事件,这样即使鼠标移出了元素范围,事件依然会被该元素捕获处理。通常与releaseCapture方法配合使用。 3. releaseCapture方法:此方法用于释放鼠标事件的捕获状态。当...

    易语言解决捕获鼠标时鼠标位置问题

    本文将深入探讨如何使用易语言解决在捕获鼠标时获取鼠标位置的问题,以及相关函数`SetCapture`和`ReleaseCapture`的使用方法。 首先,我们来理解“捕获鼠标”的概念。捕获鼠标意味着在程序运行期间,即使鼠标离开了...

Global site tag (gtag.js) - Google Analytics