[发明专利]在内嵌浮动框架元素的网页中实现元素拖动的方法及装置有效
申请号: | 201210165454.5 | 申请日: | 2012-05-25 |
公开(公告)号: | CN103425706A | 公开(公告)日: | 2013-12-04 |
发明(设计)人: | 龙福康 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F3/0486;G06F9/445 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 王一斌;王琦 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 在内 浮动 框架 元素 网页 实现 拖动 方法 装置 | ||
技术领域
本发明涉及计算机技术,特别涉及一种在内嵌浮动框架元素的网页中实现元素拖动的方法及装置。
背景技术
元素(Element)拖动是网页(Web)应用中常用的一种与用户交互的手段,即通过鼠标或触控屏触摸操作,改变元素在网页中的位置以及元素对应的层在网页中的层叠顺序,从而可以将元素调整到网页中用户需要的位置并改变其在网页中的显示顺序。即通过监测鼠标点击、拖动和脱离接触三个操作事件,即鼠标在待拖动元素上按下(点击)时记录鼠标的坐标信息,在鼠标拖动时计算鼠标坐标信息的变化量,以该变化量为依据,设置待拖动元素的坐标,对待拖动元素进行拖动操作,在鼠标脱离待拖动元素(脱离接触)时停止拖动,从而实现元素在网页中的拖动。
为了满足用户对网页的个性化需求以及扩展网页的应用,现有技术基于上述网页,提出了一种基于浮动框架(iframe)元素的网页,即在一个网页中内嵌入框架区域或窗口、或其他网页,也就是说,iframe元素是一个特殊的网页元素,对iframe元素进行的操作事件由iframe元素而非网页进行感知,在iframe元素中,可以包含其他元素。这样,在网页中内嵌有iframe元素时,如果鼠标或触摸笔在拖动过程中经过iframe元素窗口,即iframe元素所在区域时,将由iframe元素捕获拖动事件,而由于网页与iframe元素相互独立,使得网页无法感知拖动事件,从而无法计算鼠标坐标信息的变化量,拖动将会被中断、终止或出错,导致不能将待拖动元素拖动至目标区域,使得拖动的有效性较低;进一步地,在后续中,当鼠标或触摸笔离开iframe元素窗口后,网页能够重新感知鼠标的拖动事件,但由于无法获知待拖动元素在iframe元素窗口中是处于拖动状态还是非拖动状态,将可能再次造成拖动操作的中断、终止或出错,使得拖动操作十分混乱,进一步降低了拖动的有效性。举例来说,在将待拖动元素拖动至iframe窗口后,例如,如果鼠标一直按住不放往前拖动,由于网页无法感知鼠标的拖动事件,因而,网页可能对待拖动元素不进行任何操作,使得待拖动元素不随鼠标的拖动而移动;当然,网页也可能将无法感知的拖动事件认为是操作事件与待拖动元素脱离接触,从而结束拖动流程。再例如,如果鼠标在进入iframe元素窗口后,在iframe元素上松开,拖动流程本应该结束,但由于网页无法感知脱离接触事件,当鼠标离开iframe元素窗口回到其他区域时,待拖动元素可能继续随鼠标拖动而移动。
发明内容
有鉴于此,本发明的主要目的在于提出一种在内嵌浮动框架元素的网页中实现元素拖动的方法,提高拖动操作的有效性。
本发明的另一目的在于提出一种在内嵌浮动框架元素的网页中实现元素拖动的装置,提高拖动操作的有效性。
为达到上述目的,本发明提供了一种在内嵌浮动框架元素的网页中实现元素拖动的方法,
设置归属于网页、置于该网页所有元素的最顶层的全局阻挡层;以及,设置归属于所述网页、置于该浮动框架元素的上一层的局部阻挡层,该方法包括:
获取网页中各元素的状态,为网页中在拖动轨迹上且处于拖动状态的浮动框架元素加载局部阻挡层;
在接收到网页中处于拖动状态的元素输出的触发信息后,如果拖动轨迹上的非拖动元素中包含浮动框架元素,则为该网页加载全局阻挡层,和/或,为该非拖动元素中包含的浮动框架元素加载局部阻挡层;
所加载的阻挡层屏蔽浮动框架元素的操作事件,并通过所加载的阻挡层归属的网页感知操作事件,触发输出触发信息的所述元素沿拖动轨迹拖动。
一种在内嵌浮动框架元素的网页中实现元素拖动的装置,该装置包括:元素状态获取模块、加载模块、监测模块以及拖动处理模块,其中,
元素状态获取模块,用于获取网页中各元素的状态;
加载模块,用于根据元素状态获取模块中元素的状态,为网页中在拖动轨迹上且处于拖动状态的浮动框架元素加载局部阻挡层;
接收拖动处理模块输出的加载信息,为该网页加载全局阻挡层,和/或,为该非拖动元素中包含的浮动框架元素加载局部阻挡层;
所加载的阻挡层屏蔽浮动框架元素的操作事件,并通过所加载的阻挡层归属的网页感知操作事件,触发输出触发信息的元素沿拖动轨迹拖动;
监测模块,用于在接收到网页中处于拖动状态的元素输出的触发信息后,向拖动处理模块输出拖动处理信息;
拖动处理模块,用于接收拖动处理信息,如果拖动轨迹上的非拖动元素中包含浮动框架元素,向加载模块输出加载信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210165454.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种改进型对讲机
- 下一篇:一种提高工厂化育苗茶穗生根率的方法