簡體   English   中英

jquery ui 對話框上的 window.getSelection 不返回 Safari 中的選擇

[英]window.getSelection on a jquery ui dialog does not return selection in Safari

我正在使用 jquery UI 對話框( http://jqueryui.com/demos/dialog/ )來顯示一段文本。 我想 select 這個對話框上的一些文本並對其進行操作。 現在我當前的代碼適用於 Chrome 和 Firefox 但不適用於 Safari。 (尚未在 IE 上測試)

我得到選擇並顯示如下:

selection = window.getSelection(); 
alert(selection.toString().length);

警報在 Safari 上返回零。 我對 javascript/jquery 比較陌生,所以任何指針都會有所幫助! 謝謝!

回答:對於看到這個的任何人......當我在 safari 的對話框中使用事件“mousedown”而不是“click”時,它開始工作。 感謝大家!

看起來 Safari 的工作方式略有不同。 getSelection() 沒有返回正常的字符串 object,因此並非所有字符串方法都適用於它返回的 object。 此鏈接可以解決http://joemaller.com/503/getselection-workaround/

看起來這是一個非常古老的“錯誤”,因此可能會有更好的建議來代替那里做什么。

如果您正在對選擇進行任何操作,我強烈建議您查看 Tim Down 的rangy庫。 這家伙是范圍/選擇 object 大師。 他的庫完成了實現跨瀏覽器范圍選擇庫的所有細節工作。 文檔很好,他正在積極開展該項目(幾天前發布了 v 1.1)。

(編輯:我不隸屬於該項目。我只是使用它並喜歡它!)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM