参数没有在javascript插件中传递,html语法问题?

时间:2013-08-09 08:03:34

标签: javascript jquery html prettyphoto

我正在使用名为Prettyphoto的插件,当您启动插件时,您可以传递一个名为social_tools的参数,您可以在其中输入加载Twitter和Facebook按钮的html。

js文件中的默认html本身没有问题,我也可以将html添加到js文件中并且可以正常工作。

但是当我尝试添加启动插件的代码时,它就会停止工作。

我最终看到的是}); });在屏幕上输出,好像有些东西没有在某处正确关闭。

我在当地工作。

这是我的代码

 <script type="text/javascript" charset="utf-8">
 $(document).ready(function(pp_settings){
 $("a[rel^='prettyPhoto']").prettyPhoto({
        social_tools: '<div class="twitter"><a href="http://twitter.com/share" class="twitter-share-button" data-count="none">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div class="facebook"><iframe src="//www.facebook.com/plugins/like.php?locale=en_US&href={location_href}&amp;layout=button_count&amp;show_faces=true&amp;width=500&amp;action=like&amp;font&amp;colorscheme=light&amp;height=23" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:500px; height:23px;" allowTransparency="true"></iframe></div>' 
                });
 });

 </script>

在这里,您可以看到参数列表,如果向下滚动到自定义,最后您将social_tools

http://www.no-margin-for-errors.com/projects/prettyphoto-jquery-lightbox-clone/documentation

由于

2 个答案:

答案 0 :(得分:2)

<script>元素实际上在第一次使用</script>时结束,尽管它在String字面值中的放置或使用。

防止这种情况的常见技巧是将其分解:

'...</' + 'script>...'

答案 1 :(得分:0)

这也不起作用吗?

    var options = {social_tools: '<div class="twitter"><a href="http://twitter.com/share" class="twitter-share-button" data-count="none">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div><div class="facebook"><iframe src="//www.facebook.com/plugins/like.php?locale=en_US&href={location_href}&amp;layout=button_count&amp;show_faces=true&amp;width=500&amp;action=like&amp;font&amp;colorscheme=light&amp;height=23" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:500px; height:23px;" allowTransparency="true"></iframe></div>'};

$(document).ready(function(pp_settings){
     $("a[rel^='prettyPhoto']").prettyPhoto(options);
});