2014-11-20 66 views
0

我想在我看来使用fancybox jquery插件。我正在向fancybox方法发送一个js字符串。但它不起作用。我认为它应该是一个对象。我真的不知道该怎么做。让我告诉你我的代码。我的问题仍然存在!什么可能导致这个问题?什么使用,而不是eval在jquery

这种方式不起作用。

$('.adsImgDiv').click(function(){ 
     var myFancy = $(this).attr('imgVal'); 

     $.fancybox.open([ 
       myFancy 
       ]); 
    }); 

但是这样一来它的工作原理

$('.adsImgDiv').click(function(){ 
     var myFancy = $(this).attr('imgVal'); 

     $.fancybox.open([ 
       { href:'http://127.1.0.1:14031/resources/advimages/0_03e23e4f-4c63-419a-94ef-911de63fb368.png', title:'titlein'} ,{ href:'http://127.1.0.1:14031/resources/advimages/1_03e23e4f-4c63-419a-94ef-911de63fb368.png', title:'super'} 
       ]); 
    }); 

最后一个错误

错误获取了parseJson

Uncaught SyntaxError: Unexpected token h jquery-1.8.3.min.js:541 
jQuery.extend.parseJSON jquery-1.8.3.min.js:541 
(anonymous function) myAds:218jQuery.event.dispatch jquery-1.8.3.min.js:3074elemData.handle 

回答

0

您可以使用该功能.parseJSON了点。

$('.adsImgDiv').click(function(){ 
    var myFancy = $(this).attr('imgVal'); 

    $.fancybox.open([ 
     $.parseJSON(myFancy) 
    ]); 
}); 
+0

Thnaks for your answer。我更新了我的问题。当我尝试$ .parseJSON时,它会显示错误。 Iam使用jquery 1.8.3 – gabby 2014-11-20 21:42:25

+0

做一些调试,如在控制台上输出变量myFancy – Verhaeren 2014-11-20 21:44:03

+0

$ .parseJSON不起作用。我删除了$ .fancybox.open,然后添加了var json = $ .parseJSON(myFancy);警报(JSON);但它有同样的错误。我想我有一个$ .parseJSON的问题。我的jQuery库无法识别它 – gabby 2014-11-20 21:47:04