目前我正在爲用戶編寫一個系統,填寫表單時會爲HTML電子郵件創建一個模板,以便能夠與他們的CRM系統一起使用,問題在於您的用戶有點溫順的,爲他們的生活不能理解如何查看頁面的源,以便他們可以複製和粘貼模板代碼到他們的客戶關係管理,我想要的是能夠有一個鏈接/按鈕,用戶可以點擊將在一個窗口中顯示源代碼,我現在是一個JavaScript開發人員,所以任何提示,提示示例都會很棒。javascript頁面源代碼幫助
回答
那麼你可能想要做這樣的事情:抓住包含你的模板HTML(或任何它)的元素的「innerHTML」。然後打開一個新窗口並將HTML放入其中,由<pre>
塊包圍。您還需要用適當的HTML實體替換所有重要的標記字符,並且可能會用<br>
元素替換換行符。
它可能會接近這個(但它未測試):
var html = document.getElementById('whatever').innerHTML
.replace(/&/g, '&')
.replace(/</g, '<')
.replace(/>/g, '>')
.replace(/\r?\n/g, '<br>');
var w = window.open('', 'SourceWindow', 'height=500,width=600');
var d = w.document.open();
d.write('<html><body><pre>' + html + '</pre></body></html>');
d.close();
編輯 —如果你想要去除腳本塊,你可以添加這個「替換」上面打電話系列:
.replace(/<\s*script[^>]*>.*?<\/\s*script[^>]*>/g, '')
這有點不穩定,因爲通常嘗試識別HTML與正則表達式是不可能的。但是,由於腳本標記並不真正包含標記,並且確實以下一個關閉腳本標記結束,所以它不像一般情況那樣可惡。
這很好,有什麼辦法可以去掉顯示在源代碼中的javascript?還有我用來調用你上面寫的代碼的輸入按鈕。 – 2010-07-09 14:58:31
那麼,如果有Javascript與你想要展示的源代碼混合在一起 - 或者,真的,*任何你想隱藏的東西 - 那麼事情就會變得更加棘手。我會推薦我的答案,告訴你可以隱藏腳本元素。 (但是,我不得不想知道在HTML電子郵件模板的中間腳本塊會做什麼)。 – Pointy 2010-07-09 15:08:13
它不在它頭腦中的HTML的中間,它保存了在CRM中工作的模板的重要CSS 。因此,爲什麼我需要刪除它,謝謝你的幫助。 – 2010-07-12 09:18:08
我覺得這裏最好的做法是不是真的使用JavaScript伎倆,但到HTML模板複製到一個可見部分和替換「<」與「& LT;」,「>」和「& GT; 「 (根據需要轉義其他位)。
我認爲它會導致用戶很難看到頁面源代碼,並且使用正則表達式來替代這些代碼並不困難。
- 1. Firefox C++源代碼幫助檢測頁面內容的下載
- 2. 需要javascript代碼幫助
- 3. 檢索頁面源代碼-javascript,cross-domain
- 4. 檢索頁面的源代碼在JavaScript
- 5. Windows 10 bootmgr幫助:查看源代碼
- 6. 幫助糾正源代碼,用模板
- 7. C++源代碼幫助,cout函數幫助
- 8. Javascript的幫助 - 減慢頁面下降
- 9. 爲什麼Microsoft幫助查看器2.0顯示我的源幫助頁面代碼
- 10. Iframe中的網頁源代碼在php的幫助下
- 11. 爲什麼CodeIgniter的Excel CSV幫助程序附加頁面源代碼?
- 12. 幫助在html頁面編碼
- 13. 需要幫助查找javascript代碼
- 14. 需要理解幫助JavaScript代碼
- 15. 修復DRY代碼幫助javascript?
- 16. 需要幫助修改javascript代碼段
- 17. 請幫助prependTo&替換JavaScript代碼!
- 18. 幫助簡單分頁代碼
- 19. OpenMP幫助代碼
- 20. drRacket代碼幫助
- 21. jQuery代碼幫助
- 22. 幫助PHP代碼
- 23. Php幫助代碼
- 24. 獲取頁面源代碼
- 25. 獲取頁面源代碼
- 26. 幫助頁面樣式
- 27. WebApi幫助頁面描述
- 28. Web API幫助頁面
- 29. Visual Force頁面幫助
- 30. android幫助活動頁面
我無法解析這個問題。你需要包含「所有的HTML」在哪裏?什麼劇本「激發」什麼?電子郵件與此有什麼關係?問題標題與這個問題有什麼關係?很混亂。 – Pointy 2010-07-09 14:18:39
好吧,經過您的編輯它是有道理的:-)謝謝! – Pointy 2010-07-09 14:29:02