2010-09-28 67 views
1

我有這個使所有當前頁面的字體顏色變黑的js書籤。 我想是maintein的書籤的作用,甚至點擊頁面的鏈接更改文檔加載的url鏈接

javascript:(
function(){ 
var newSS, styles='* { color: black !important }'; 
if(document.createStyleSheet) { 
    document.createStyleSheet("javascript:'"+styles+"'"); 
} else { 
    newSS=document.createElement('link'); 
    newSS.rel='stylesheet'; 
    newSS.href='data:text/css,'+escape(styles); 
    document.getElementsByTagName("head")[0].appendChild(newSS); 
} 
} 
)(); 

,所以我但如果有一種方法,我們可以改變當前頁面的鏈接成類似

<一HREF =「JavaScript的:‘負載鏈接位置’,然後選擇‘應用顏色效果’」 >鏈接</A >

*着居然認爲正確的代碼笑 我不希望到u SE時尚的插件或類似的東西的xD

回答

0

所以有幾個部分的這樣:

  1. 寫一些JavaScript攔截所有鏈接點擊和重定向到您的功能。見Use Javascript to Intercept All Document Link Clicks
  2. 編寫鏈接攔截器上調用的函數。此功能將執行以下操作:
    1. 拉動鏈接的href並將其放入document.location
    2. 打電話給你的黑色高亮功能

所以大致的代碼看起來是這樣的:

functionToHighlightTextBlack(); // Apply to current page 

// Apply to future page 
for (var ls = document.links, numLinks = ls.length, i=0; i < numLinks; i++){ 
    ls[i].onClick = function() { 
     document.location = ls[i].href; 
     functionToHighlightTextBlack(); 
    } 
} 
+0

我試圖把這個代碼的javascript:對(VAR LS = document.links, ln = ls.length,i = 0; i kapitanluffy 2010-09-28 21:16:32

+0

@kapitanluffy - 您錯過了設置代碼;試試這個:'javascript:(function(){for(var ls = document.links,ln = ls.length,i = 0; i 2010-09-28 21:54:48

+0

當它工作!非常感謝你 – kapitanluffy 2010-09-28 22:13:32