考慮下面的JavaScript:的Javascript替換()函數中添加奇怪的字符
var previewImg = 'http://example.com/preview_img/hey.jpg';
var fullImg = previewImg.replace('preview','full');
我期望的fullImg
值是:
http://example.com/full_img/hey.jpg
事實上,這是...之類的。正在運行alert(fullImg);
顯示預期的網址字符串。但是,當我提供該變量的jQuery Fancybox,像這樣:
jQuery.fancybox.open(fullImg);
東西加字符轉換成字符串,像這樣:
http://example.com/%EF%BF%BCfull_img/hey.jpg
這哪裏是%EF%BF%BC
是從哪裏來的?它是什麼?最重要的是,我該如何擺脫它?
其他一些線索:這是一個運行jQuery 1.5.1的Drupal 7站點。我在網站的其他地方使用了相同的Fancybox腳本,沒有任何問題。
+1。 'IDE可以選擇顯示隱藏字符@sam:此外,您可以將編碼設置爲ANSI,以便更容易找到它們,然後在刪除不需要的字符後將編碼恢復爲無BOM的UTF-8。 – JFK 2013-03-19 22:14:40
天才!有趣的是,我的IDE(Coda 2)有一個「Show Invisible Characters」選項(我經常用於這種情況),但是當我打開它時什麼也沒有顯示。只有當我將編碼設置爲「Western(ASCII)」時,纔會出現奇怪的字符!刪除!現在它運行良好。唯一的問題是他們從哪裏來?我很確定我手中輸入了整個劇本...... – Sam 2013-03-20 00:10:40