2008-12-09 25 views
2

如果用戶在iframe內部執行「onmousedown」,則在iframe之外拖動並懸停在具有附加「onmouseover」的元素上 - safari不會觸發此事件。Safari瀏覽器:跨越內置頁框的事件冒泡

我有一個非常規的拖拽滴設置。可以「拖動」的項目位於iframe中。放置目標位於iframe之外。如果拖動在iframe內開始,則放置目標的「onmouseover」處理程序在Safari中不會觸發。這是一個已知的問題?有沒有可用的解決方法?

目前我不需要跟蹤其他瀏覽器的放置目標的位置。如果發生「mouseup」,在「拖動」的同時,我可以從事件對象中找到確切的放置目標。放置指示由「onmouseover」功能負責。

回答

0

非手指,我不認爲什麼東西引發此事件。這是兩個完全獨立的DOM。

你在FF,IE,Opera,Chrome中試過嗎?

+1

是的,其他瀏覽器會在其他DOM上觸發「onmouseover」,而不管在「onmousedown」發生在哪個DOM上。事實上,Safari的行爲對於錨點元素的「懸停」也是不同的。 Safari在拖動時不會觸發「懸停」效果,無論是否在iframe中。 – user15566 2008-12-09 12:45:55

1

IE和Firefox啓動onmouseover事件就好了。我正在做一些類似的操作,從父文檔中拖放,以放棄iframe中的目標,並可以看到onmouseover事件觸發IE和FireFox中的目標,但不會Safari。有任何解決方法嗎?