我正在使用 pinterest 图像悬停小部件来添加用户将图像从我的网站固定到他们的 pinterest 帐户的功能。
小部件在这里找到:http: //business.pinterest.com/widget-builder/#do_pin_it_button (单击按钮类型下的图像悬停单选按钮以查看我正在使用的那个。)
我有 pinterest 按钮在网站上的其他页面上正常工作,其中没有使用 ajax 使用 pinterest 提供的代码加载任何内容:
<script type="text/javascript">
(function(d){
var f = d.getElementsByTagName('SCRIPT')[0], p = d.createElement('SCRIPT');
p.type = 'text/javascript';
p.setAttribute('data-pin-hover', true);
p.async = true;
p.src = '//assets.pinterest.com/js/pinit.js';
f.parentNode.insertBefore(p, f);
}(document));
</script>
但是,我遇到问题的地方是当我通过 ajax 在弹出窗口中加载一些内容时,我需要使用该内容加载 pinterest 按钮。我尝试在 ajax 请求完成之前不加载 pinterest 代码,但到目前为止还没有运气。试过这个:
<script type="text/javascript">
jQuery(document).ajaxComplete(function() {
(function(d){
var f = d.getElementsByTagName('SCRIPT')[0], p = d.createElement('SCRIPT');
p.type = 'text/javascript';
p.setAttribute('data-pin-hover', true);
p.async = true;
p.src = '//assets.pinterest.com/js/pinit.js';
f.parentNode.insertBefore(p, f);
}(document));
});
</script>
在 ajax 将额外内容插入 DOM 之后,我不会在此页面上的其他任何地方加载 pinterest 代码,直到使用上述方法加载。我还尝试了其他一些方法,我发现它是围绕互联网的其他主题,但没有任何帮助。我还没有找到任何其他专门用于图像悬停小部件的解决方案,所以如果有人在使用 Ajax 之前有任何运气,那么任何建议都会很棒。
谢谢 :)