我问了这个问题 my question
我设法在里面放了一个带有图像的div标签。当我开始拖动extjs窗口时,我用div切换flash播放器。它运行良好但仍然当我将鼠标悬停在div标签上时拖动停止,因为浏览器将焦点放在div标签上。
使用javascript / jquery函数拖动extjs窗口时是否可以删除/停止div标记的焦点?
我甚至没有使用图像,只使用背景颜色的div标签,但当鼠标悬停在div上时仍然停止拖动窗口。
这是一个示例代码
win = Ext.create('widget.window',
{
title: "My Player",
id: "my_player",
width: 750,
height: 290,
x:startXPlayer,
y:startYPlayer,
ghost: false,
modal: false,
resizable: false,
disableCaching : true,
closeAction: 'destroy',
items: [],
html: '<iframe src="./index.php/myplayer?'+url+'&d='+new Date()+'" style="width: 735px; height: 280px; border: none;"></iframe>'
});
好的,这里是嵌入在iframe中的简化html
<html>
<head>
<title>my page</title>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.registerObject("myPlayer", "9.0.0", "expressInstall.swf");
</script>
</head>
<body>
<div id="window">
<div id="static_image" class="image">
<img src="test.jpg"/>
</div>
<div id="flash" class="flobject">
<object id="myPlayer" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="720" height="240">
<param name="movie" value="test.swf" />
<param name="wmode" value="transparent">
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="test.swf" width="300" height="120">
<!--<![endif]-->
<div>
<h1>Alternative content</h1>
<p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>
</div>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
</div>
</div>
</body>
</html>
答案 0 :(得分:1)
我认为focus
这个词令你感到困惑 - div tag shouldn't receive focus。您拖动的div更有可能具有比可拖动元素更高的z-index,从而在可拖动元素上触发mouseleave
或mouseout
事件,从而阻止拖动。如果您可以发布working fiddle,则可以更轻松地查看此处发生了什么。