Pinterest按钮到我的网站 - 我真的需要他们的Javascript吗?

时间:2012-12-27 18:30:55

标签: javascript pinterest

我在网上商店的产品中添加了Pinterest PinIt按钮。这就是Pinterest要我做的事情:

http://business.pinterest.com/widget-builder/#do_pin_it_button

我已经成功实现了页面上所有产品的按钮,并且工作正常。关于他们希望我添加的脚本,我真的需要吗?它是为了什么?可以不包含它吗?我想知道,因为它似乎干扰了我正在做的一些AJAX提交(不确定原因)并且按钮似乎在没有脚本的情况下工作正常。

2 个答案:

答案 0 :(得分:6)

pinit.js加载的JavaScript构建了五个不同的小部件,而不仅仅是Pin It按钮。如果它干扰了AJAX提交,请检查它是否只在页面底部加载一次。 (我是代码的作者,我很想知道更多关于我们如何破坏您的页面;是否有我可以查看的URL?)

接受的答案使用的代码可能无效,因为第二个和第三个参数(媒体和描述)之间的&符号已转换为HTML实体。

一旦&符号被修复,接受的答案中的代码将导致Pin It弹出窗口出现在主浏览器窗口中,这是丑陋的,并且会将用户拉离您的页面,这实际上不是什么你要。 Pinterest用户知道弹出窗口应该是什么样子,并且如果错误则倾向于不固定。

要复制Pinterest体验,您应该添加以下内联JavaScript:

onclick="window.open(this.href, '_pinIt', 'status=no,resizable=yes,scrollbars=yes,personalbar=no,directories=no,location=no,toolbar=no,menubar=no,width=632,height=270,left=0,top=0');return false;" 

我强烈建议您不要轻易削减您的网址;它们很脆弱,最终几乎肯定会破裂。如果你想要一些更具前瞻性的东西,你可以尝试用JavaScript触发Pinterest bookmarklet代码,就像我们的工具栏bookmarklet一样。这看起来像这样:

<a style="cursor:pointer;" onclick="var d=document;var e=d.createElement('script');e.setAttribute('type','text/javascript');e.setAttribute('charset','utf-8');e.setAttribute('src','//assets.pinterest.com/js/pinmarklet.js?r='+Math.random()*99999999);d.body.appendChild(e);"><img src="//assets.pinterest.com/images/pidgets/pin_it_button.png" /></a>

重要提示:由于pinit.js使用与方案无关的网址,如果您通过将HTML拖入浏览器进行测试,它会尝试查找file://下的内容。确保你在服务器上运行它。

答案 1 :(得分:3)

没有。我只有一个关于我的链接 - 工作正常。

<a href="http://pinterest.com/pin/create/button/?url=http%3A%2F%2Fwww.example.com%2Fproduct%3Fmodel%3DEQEA&amp;media=http%3A%2F%2Fwww.example.com%2Fimg_c%2F14ngton%2Fdesign%2F232.jpg&amp;description=Dack+Earth" class="pin-it-button" count-layout="horizontal" target="_blank">
    <img src="http://example.com/images/pin_icon.png" title="Pin It">
</a>

如果您还希望计数器显示在每个按钮旁边,则只需要脚本。

enter image description here