2013-07-23 12 views
-2

工作完美,但我好像在我的jQuery腳本有一個「意外的標識符」,但我找不到在哪裏......意外的標識,而在HTML

var click = "window.open(
      'https://www.facebook.com/sharer/sharer.php?u='+encodeURIComponent(location.href)', 
      'facebook-share-dialog', 
      'width=626,height=436'); 
     return false;"; 
var facebookshare = '<a href="#" onclick="' + click + '"><img src="http://w.sharethis.com/images/facebook_counter.png" /></a>'; 
$('<div class="facebook">' + facebookshare + '</div>').insertAfter('.easy_social-widget-twitter'); 

當我使用純HTML的代碼相同,是訣竅...爲什麼不在這個JQuery腳本?

StackOverflow上的其他情況表明一個未關閉的函數(或別的東西),但事實並非如此。因爲我用alert("check");替換了這段代碼,所以我得到了正確的提醒!

+3

這個問題似乎是脫離主題,因爲它可以通過任何語法着色編輯器解決 –

+2

字符串不是多行的 - > http://jsfiddle.net/UbgQn/ – adeneo

+0

+1多行!請添加它作爲答案! – Michiel

回答

2

您錯過了\來創建一個多行字符串文字,並且您有一個不應該在那裏的引用。

click字符串聲明更改爲

var click = "window.open(\ 
      'https://www.facebook.com/sharer/sharer.php?u='+encodeURIComponent(location.href)',\ 
      'facebook-share-dialog',\ 
      'width=626,height=436');\ 
     return false;"; 

但你不應該這樣的內嵌代碼,你只是在尋找問題。使用jQuery的on函數來設置事件處理程序。你永遠不應該在JS中生成JS代碼(好吧,幾乎從不,但是直到你有足夠的經驗才能將其視爲「永遠」)。

+0

我已經試過了,但沒有運氣...... – Michiel

+0

感謝您關於'on'功能的精彩提示! – Michiel