2011-02-16 174 views
10

我正在使用Ruby on Rails 3,並且我想要禁用電子郵件中的HTML電子郵件地址鏈接。如何禁用電子郵件鏈接?

例如,如果在一封電子郵件中我把一些原始的HTML像

Hi, you email is: <br/> 
[email protected] 

Gmail的自動檢測,這是一個電子郵件地址,並將其更改爲

Hi, you email is: <br/> 
<a target="_blank" href="mailto:[email protected]">[email protected]</a> 

我想有這樣的輸出

# Text without the 'mailto:' link 
Hi, you email is: 
[email protected] 

我該怎麼做?

+0

或者可以轉換成一些jQuery干預或甚至PHP的圖像? – 2011-09-15 13:07:55

回答

2

您可以嘗試

Hi, you email is:<br /> 
test&#64email&#46com 
+8

,如果這不起作用 - 請嘗試如下:test @ email.com – 2011-02-16 08:09:00

+0

@ xydev..thanks ... – rubyprince 2011-02-24 04:51:20

+0

請勿使用Gmail,因此降低投票率。加文鎖解決方案好得多。 – Ulflander 2012-12-03 20:55:59

-3

解決此問題的唯一方法是將電子郵件地址轉換爲圖像並將其包含在電子郵件中。當然這意味着用戶可能會選擇不下載圖片,這意味着他們也不會獲得電子郵件地址。

真正歸結到的是,一旦收到電子郵件,您無法控制Gmail或任何其他電子郵件客戶端的功能,因此沒有其他解決方法。這是Gmail或任何其他電子郵件客戶端的選擇,可以通過電子郵件來滿足他們的需求,並且包括超鏈接的電子郵件地址。

如果你很堅定的關於未轉換的電子郵件爲超鏈接,你可以嘗試做其他事情隱瞞事實,這是一封電子郵件,就像寫出來,而不是:

Hi, your email is: 
test at email dot com 

當然,這可能是更混亂。如果我是你,我只會滿足於Gmail將超鏈接你的電子郵件的事實。

1

即使我有同樣的問題。 Gmail會檢測並將郵件地址和IP地址轉換爲鏈接。我使用string.replace將塊中的點(。)和@括起來。這對我來說工作得很好。示例python代碼看起來像。

text = [email protected] 
chars = ['.','@'] 
encloseIn = 'span' 

for char in chars: 
    text = string.replace(text, char, '<'+encloseIn+'>'+char+'</'+encloseIn+'>') 
18

我有一個更自然的建議:將電子郵件/網址封裝在錨鏈接超鏈接中。

<a name="myname">[email protected]</a> 

由於文本已經包含在超鏈接中,因此Gmail放棄並保持獨立。 :)

(注:還曾任職於蘋果的郵件客戶端)

0

你只需要添加「零寬度空間」的性格,他的HTML代碼:

&#8203; 

該代碼添加您需要的字符串中的空格。 對於一個令人尊敬的解決方案,您需要使用<nobr>標記來補充此方法,因爲使用此標記可以防止突破到下一行。