2012-12-06 230 views
3

我有一個包含IFrame的文檔(所有源項都來自同一個域),當我將onmouseup事件附加到我的IFrame中的div時,它會在我的鼠標啓動時觸發,無論是我仍然在用我的光標在元素上。onmouseup event not firing

但是,如果我離開IFrame仍然拿着我的鼠標,然後釋放,事件不會觸發。

是否有某種方式來抓住這個問題,也許知道,當用戶從使用iframe出來是鼠標光標

+3

你能顯示代碼嗎? –

回答

3

鼠標事件被捆綁到Windows和一個iframe被認爲是一個窗口,讓你不會得到如果光標不在iframe上,那麼mouseup事件觸發iframe。你可以做的就是像這樣捕獲文檔上的父框架的mouseup事件。

$(parent.document).mouseup(functionToRun); 

或不jQuery的

parent.document.onmouseup = functionToRun; 

你會把這個iFrame的文件內。

+0

這隻適用於iframe在同一個域上,但你注意到它們是。 :) – earl3s

+0

我在最後做了什麼就是按照您的建議從父級捕獲mouseup事件,然後從正確的IFrame中的元素派發mouseup事件 –

+0

太棒了,很高興它的工作。 – earl3s