不錯的用外部Javascript修正特定網頁內容

來源:互聯網
上載者:User

這段代碼算是自己練手協助別人解決的一個問題寫的。
要求是這樣的:

<a href="window.open('','')">test</a>,這個不能變,只可以在外面做事情,那要如何呢?

要求點擊上面的串連,開啟一新頁面,並在原頁面進行其他動作。

分析可知:上面開啟新頁面的寫法本身就是錯誤的,根本無法開啟新頁面。正確的寫法應該是:

<a href="javascript:void(0)" onclick="window.open('','')">test</a>

於是解決辦法就是用外部js修改串連的內容。首先要判斷那個連結內部的href屬性包含“window.open”,然後為其增加onclick屬性,並將href內容賦給它。然後修改href屬性內容。
但解決過程中發現一個問題,讀取href屬性內容時不能得到其實際內容,而是網頁的url路徑(去除最後的分頁檔名)+href內容,還要把前面的url路徑去掉。這個可以用substring()結合indexOf()解決。
至於在原頁面些內容就簡單多了。
根據分析寫了如下測試代碼,實現了上面的要求: xmlns ="http://www.w3.org/1999/xhtml" xml:lang ="en" lang ="en">

test ,這個不能變,只可以在外面做事情,那要如何呢?

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.