2017-07-26 35 views
-1

我需要在node.js服務器中處理嵌入爲電子郵件內容的一些HTML代碼段。我們的目標是檢查片段是否顯示爲空,如果是,請顯示一些佔位符文本。使用Javascript檢查HTML代碼段是否可視化爲空

例如,該片段被認爲是視覺空:

<div><br></div><div><includetail><!--<![endif]--></includetail></div> 

由於在瀏覽器中呈現時,而這個片段被認爲是視覺上非空它會出現空的:

<div><br></div><div>Hello!</div> 

因爲Hello!將在瀏覽器中呈現片段時出現。

如何實現這樣的函數來返回HTML代碼片段的可視化空虛?

+0

你會被它的處理後,您在郵件發送之前呢?或者當有人打開電子郵件? – jeanfrg

+0

我需要從電子郵件內容中處理它,也就是在電子郵件到達之後。 –

回答

2

我不會在電子郵件中運行JavaScript,它真的得不到支持。

http://en.wikipedia.org/wiki/Comparison_of_e-mail_clients

在一般jQuery解決辦法是像下面

$("*").empty().text("placeholder here"); 

JavaScript的解決辦法是

var list = document.getElementsByTagName('*'); 
for (var i = 0; i < list.length; i++) { 
    if (list[i].innerHtml === "") { 
    list[i].innerHtml = "placeholder here" 
    } 
} 

編輯: 既然你在說評論你要運行這個在節點中,查看用於jQuery節點替換的cheerio。 https://github.com/cheeriojs/cheerio

我的代碼將正常工作,你通過它通過cheerio

+0

由於很好的理由而得不到支持。 –

+0

我同意@OKsure – jeanfrg

+0

對不起,我沒有清楚說明 - 我需要在node.js服務器中處理電子郵件內容。所以我不想在電子郵件中運行JS。問題已更新。 –