我正在处理灯箱脚本并使用自定义数据灯箱属性遇到问题。我要做的是允许将 data-lightbox 属性设置动态添加到页面 - 在图像上。
这是我的图像:
<a href="largeimage.png" data-lightbox='{"setting":"value","setting":"value"}'>
<img src="thumbnail.png" />
</a>
这是我用来注入设置的脚本部分:
$('#testthumbnail').find('a').attr('data-lightbox',settings);
设置只是一个字符串,它被转储到属性中。运行时,我没有收到任何错误,并且设置都正确注入到 data-lightbox 属性中。尽管出于 1 个原因,这些设置在插件中没有生效 - 在某处,输出到页面的 html 看起来像这样:
<a href="largeimage.png" data-lightbox="{"setting":value"}"> ...
data-lightbox 属性上的周围 ' ' 被转换为 " " - 这在我的情况下不起作用。有谁知道为什么撇号被转换为引号以及我如何才能解决这个问题?谢谢!
更新:我的设置变量既可以作为格式正确的 JSON 字符串也可以作为对象使用。我尝试在 data-lightbox 属性中同时使用 Object 和字符串,但遇到了同样的问题。浏览器正在将我的 ' ' 转换为 " " ,这会导致 JSON 错误。