尝试将共享社交按钮的值用于操作目的

问题描述 投票:2回答:2

我试图找到一种方法来获取分享社交按钮的价值看:http://www.1stwebdesigner.com/wordpress/wordpress-plugins-social-sharing/按钮位于页面的左侧。

现在我想也许可以在文档上使用JavaScript来获取特定跨度// div的值。但他们在iframe中似乎不起作用:

这就是我所拥有的:

<iframe id="something_iframe" 
    src="http://www.facebook.com/plugins/like.php?href=http://www.freelancer.com/projects/myskills.php&send=false&layout=button_count&width=100&show_faces=false&action=like&colorscheme=light" 
    scrolling="no" frameborder="0" 
    style="border:none; overflow:hidden; width:100px; height:21px;"
    allowTransparency="true">
</iframe>

<div id="something">
</div>

<script>
    var $j = jQuery.noConflict();
    $j(document).ready(function() {
        $j("#something").text($j(".pluginCountTextDisconnected").text());
    });
</script>

我认为,即使这种JavaScript方式仍然有用,但在PHP API或其他方面可能有更好的方法。

javascript jquery html iframe facebook-like
2个回答
2
投票

由于same origin policy,这是不可能的,因为这些跨度被加载到iFrame中,该iFrame从不同于您的页面加载。

当相同的原始策略处于活动状态时,您无法操纵iFrame的内容或访问它。可能会有一些黑客攻击,但我建议你看看twitter和Facebook的API,因为他们可能通过API公开like / retweet计数。

每当Twitter / Facebook改变其共享按钮的某些内容时,这也有利于不破坏。这些并不是一个公共接口,因此他们可以随时更改代码。

更新:在网站标记上看了一下后,似乎您可以访问Google+按钮,因为它放在侧面的HTML而不是iFrame中,但是Facebook和Twitter在iFrame中运行他们的小部件按钮。可以访问。


0
投票

我不知道这是否是您可能正在研究的内容,但我想添加此答案以防任何人碰巧查找类似的问题。


如果我从问题中理解的是正确的,你想要一种从社交插件中获取份额/喜欢/任何东西的方法并使用该数字。

在处理类似的问题时,我发现了以下插件:Sharrre

它通过使用same origin policy从PHP调用一些API来避免CURL问题,而且一些直接来自Javascript。它已经设置为几个最常用的社交网站,如果你愿意,可以很容易地添加其他网站。

它确实有缺点,你必须手动添加你想要搜索共享计数的链接,而在服务器端它有时有点滞后(由于社交网站的响应时间)。此外,随着您使用的社交网站的每个API更改,您必须检查它是否仍然按预期工作。


请知道我与插件/网站没有任何关系,我只是使用了插件,它确实帮助了我,我希望它也能帮助其他人。

© www.soinside.com 2019 - 2024. All rights reserved.