2012-05-10 34 views
-2

我知道這是一件很容易,但我看不出它誰能告訴我爲什麼我收到錯誤「missing } after property list」爲下面的代碼:爲什麼我在屬性列表錯誤後出現這個缺失? 。:(

<script type="text/javascript"> 

$(".single_image").live("click", function() { 
    jwplayer().load({ 
     file: 'utubeurl' 
    }); 
});​ 

</script> 

整個代碼是如下所示:

  $(xml).find('item').each(function(i){ 
       var current=$(this); 
       var ttl=current.find('title:first').text(); 
       var thum=current.find('thumbnail:first').text(); 
       var cat=current.find('category:first').text().split(','); 
       var desc = current.find('description:first').text(); 
       var utubeurl = current.find('youtubeurl:first').text(); 
       var fbshareurl = current.find('facebookshareurl:first').text(); 
       var twturl = current.find('twitterurl:first').text(); 
       var nbcurl = current.find('nbcsiteurl:first').text(); 

       var item = { 
        title:ttl, 
        thumbnail:thum, 
        category:cat, 
        description:desc, 
        youtubeurl:utubeurl, 
        facebookshareurl:fbshareurl, 
        twitterurl:twturl, 
        nbcsiteurl:nbcurl, 
        obj:$('<div class="'+options.itemClass+'"><a id="'+parentId+'" class="single_image" title="'+desc+'"><script type="text/javascript"> $(".single_image").live("click",function(){ jwplayer().load({file:'+utubeurl+'}); }); </script><img src="'+thum+'" /></a><div class="show_lightbox_title"><strong>'+ttl+'</strong></div><ul id="social"><li><iframe src="'+fbshareurl+'" class="iframe_style" scrolling="no" frameborder="0" allowtransparency="true"/></li><li><a class="twtbtn" href="'+twturl+'" target="_blank"><img src="images/twitter_btn.gif"></a></li><a class="nbcbtn" href="'+nbcurl+'" target="_blank"><img src="images/showPages_btn.gif"></a></div>') 
       }; 
       shows.push(item); 
      }); 
+0

我沒有看到任何錯誤。這是正確的嗎? http://jsfiddle.net/dsummersl/n9Vuk/ – dsummersl

+0

這個問題上的「xml」標籤是否相關? – nnnnnn

+0

如果我複製您的原始代碼,我不會收到任何錯誤...您發佈的內容沒有任何問題。 –

回答

2

你需要引用您的屬性值,在這裏:

obj:$('<div class="'+options.itemClass+'"><a id="'+parentId+'" class="single_image" title="'+desc+'"><script type="text/javascript"> $(".single_image").live("click",function(){ jwplayer().load({file:'+utubeurl+'}); }); </script><img src="'+thum+'" /></a><div class="show_lightbox_title"><strong>'+ttl+'</strong></div><ul id="social"><li><iframe src="'+fbshareurl+'" class="iframe_style" scrolling="no" frameborder="0" allowtransparency="true"/></li><li><a class="twtbtn" href="'+twturl+'" target="_blank"><img src="images/twitter_btn.gif"></a></li><a class="nbcbtn" href="'+nbcurl+'" target="_blank"><img src="images/showPages_btn.gif"></a></div>') 

...這樣的:

'... jwplayer().load({file:'+utubeurl+'}); ...' 

...需要是:

'... jwplayer().load({file:"'+utubeurl+'"}); ...' 

...請注意額外的引號。不知道如果添加這些引號會打破你的looooooooong(難以閱讀/支持)字符串,你可能需要轉義它們。但你明白了嗎?

乾杯

+0

它添加了一個具有基於xml信息的獨特內容的容器。你有沒有使用這麼多代碼創建具有獨特內容的容器的替代路線?你會如何做到這一點? –

+0

咦?你得到錯誤的原因是*你的財產價值*'utubeurl'周圍缺少必要的引號。仔細看上面的代碼。 – Madbreaks

1

當我複製並粘貼該代碼塊時,我看到一個額外的字符尾隨第二個關閉});

刪除在我的控制檯執行正常,所以如果這不是錯誤的來源,我會看看頁面上的其他地方。

該頁面是否可公開訪問?

+0

[原版](http://stackoverflow.com/revisions/10526414/1)似乎沒有這個問題,雖然... –

+0

任何機會,我們可以看到上下文中的代碼? –

+0

你是什麼意思? –

2

嘗試把quiote標記下的文件屬性,像這樣:

function() { 

'file' : 'utubeurl' 

} 

- 編輯:

我不好,算了吧,我用JSON,jQuery和可能其他一些Ĵ惑在那裏,你正在定義一個屬性,不需要使內存插槽的名稱成爲一個字符串。

+0

已更新描述 –

+0

Giovanni建議的內容仍然有效,實際上所有的json密鑰都應該有引號。所以把標題,縮略圖,類別等引號。 –

+1

看起來像破了我的代碼,現在它甚至沒有工作。所以例如有這個?VAR項目= { \t \t \t \t \t \t '稱號': 'TTL', \t \t \t \t \t \t '縮略圖': '吞', \t \t \t \t \t \t '類': '貓', \t \t \t \t \t \t '描述': '遞減', \t \t \t \t \t \t 'youtubeurl': 'utubeurl', \t \t \t \t \t \t 'facebookshareurl': 'fbshareurl', \t \t \t \t \t \t 'twitterurl': 'twturl', \t \t \t \t \t \t「 nbcsiteurl':'nbcurl', –

1

解決了這個問題,通過傳遞一個變量通過href然後傳遞給命令來播放url。

var item = { 
        title:ttl, 
        thumbnail:thum, 
        category:cat, 
        description:desc, 
        youtubeurl:utubeurl, 
        facebookshareurl:fbshareurl, 
        twitterurl:twturl, 
        nbcsiteurl:nbcurl, 
        obj:$('<div class="'+options.itemClass+'"><a href="javascript:utubeurlParser(\''+utubeurl+'\')" id="'+parentId+'" class="single_image" title="'+desc+'"><img src="'+thum+'" /></a><div class="show_lightbox_title"><strong>'+ttl+'</strong></div><ul id="social"><li><iframe src="'+fbshareurl+'" class="iframe_style" scrolling="no" frameborder="0" allowtransparency="true"/></li><li><a class="twtbtn" href="'+twturl+'" target="_blank"><img src="images/twitter_btn.gif"></a></li><a class="nbcbtn" href="'+nbcurl+'" target="_blank"><img src="images/showPages_btn.gif"></a></div>') 
       }; 
       shows.push(item); 
      }); 

      setSetter(); 
     } 
    }); 
} 
utubeurlParser = function(url){ 
       jwplayer().load({file: [url]});} 
相關問題