2010-11-07 27 views

回答

2

在Firefox 3.6,Chome 6和Opera 10.6中測試的示例代碼完全符合您在問題中描述的內容。

javascript:(
    function(){ 
     var range = window.getSelection().getRangeAt(0); 
     var a = document.createElement('a'); 
     a.setAttribute('href',document.location); 
     a.appendChild(document.createTextNode(window.getSelection().toString())); 
     range.deleteContents(); 
     range.insertNode(a); 
    } 
)() 

如果你需要它是兼容IE閱讀這篇文章: http://www.daniweb.com/forums/thread85642.html

1

下面是非常相似@ wojtiku的答案,但增加了IE瀏覽器的支持和一些額外的檢查和改進:

javascript:(function() { 
    var sel, range, a; 
    if (window.getSelection) { 
     sel = window.getSelection(); 
     if (sel.rangeCount) { 
      range = sel.getRangeAt(0); 
      a = document.createElement("a"); 
      a.href = window.location.href; 
      a.appendChild(document.createTextNode("" + sel)); 
      range.deleteContents(); 
      range.insertNode(a); 
     } 
    } else if (document.selection && document.selection.type == "Text") { 
     range = document.selection.createRange(); 
     a = document.createElement("a"); 
     a.href = window.location.href; 
     a.appendChild(document.createTextNode(range.text)); 
     range.pasteHTML(a.outerHTML); 
    } 
})(); 
+0

謝謝。那好極了 !我希望你能理解用這個小書籤可以做什麼。只需創建一段文字鏈接並拖動到書籤工具欄即可。您將獲得一個顯示選定文本的書籤。 Opera中沒有更多愚蠢的Firefox或Opera Notes中的剪貼簿。只需將所有筆記作爲書籤存儲在同一棵樹中。什麼可以更方便?再次感謝,夥計們。 – petxd086 2010-11-08 18:40:20

相關問題