Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 像Facebook一样的按钮代码是如何工作的,我怎样才能做类似的事情?_Javascript_Class_Html_Facebook Like - Fatal编程技术网

Javascript 像Facebook一样的按钮代码是如何工作的,我怎样才能做类似的事情?

Javascript 像Facebook一样的按钮代码是如何工作的,我怎样才能做类似的事情?,javascript,class,html,facebook-like,Javascript,Class,Html,Facebook Like,我有一个网页,上面有250个不同的项目,每个项目都有自己的Like按钮,使用标准的Facebook“Like”代码: 该页面在所有计算机平台上的所有浏览器以及Android设备上都能正常工作。不幸的是,所有单独的类似Facebook的按钮似乎给iPad和iPhone造成了内存问题,Safari在这些设备上的页面崩溃 div class=“fb like”等。每个like按钮的一部分不是我可以在数千个页面上轻松更改以使iPad满意的,但我可以轻松删除出现在这些页面顶部的标准Facebook代码,使

我有一个网页,上面有250个不同的项目,每个项目都有自己的Like按钮,使用标准的Facebook“Like”代码:

该页面在所有计算机平台上的所有浏览器以及Android设备上都能正常工作。不幸的是,所有单独的类似Facebook的按钮似乎给iPad和iPhone造成了内存问题,Safari在这些设备上的页面崩溃

div class=“fb like”等。每个like按钮的一部分不是我可以在数千个页面上轻松更改以使iPad满意的,但我可以轻松删除出现在这些页面顶部的标准Facebook代码,使like按钮正常工作。我想做的是,用我自己的HTML替换我们每个页面顶部的Facebook代码,该HTML捕获每个“相似按钮”中的数据,并生成我自己的按钮,这些按钮的功能稍有不同。(也许他们每个人都会链接到一个单独的页面,当页面加载到iOS设备上时,该页面将成为共享页面。)唯一的问题是,我没有完全掌握使class=“fb like”的这些项目中的每一项触发某些内容在其中生成内容所需的HTML/CSS/Javascript。我想这就是Facebook代码在页面顶部用Like按钮链接的功能

有人能简单地向我解释一下如何访问我页面中class=“fb like”部分的数据,并将我自己的项目放在那里吗?然后,我可以在iPad/iPhone上动态地做一些不同的事情,这样它们就不会崩溃,也许只需将类似的按钮转换为共享页面链接即可

我可以为此编写自己的Javascript/HTML代码,但前提是我了解了如何访问每个“fb-like”DIV中的数据值,以及如何使生成的代码在该页面上的250个位置中的每个位置都出现


任何访问我页面class=“fb like”部分中的数据,然后在其中生成内容的示例都将不胜感激。即使是最简单的例子也足以让我理解如何从那里编写我需要的任何程序。有人能帮我开始吗?

根据穆罕默德的建议,在这个网站上找到了上面提到的帖子,我为自己创建了一个似乎有效的小例子。本例仅访问每个Like按钮的data href并将其放在该位置。这应该足以让我为iOS编写修改页面的其余部分。以下是我提出的代码,与上面提到的页面略有不同,以适应类似Facebook的按钮类:

<SCRIPT>
function replaceContentInContainer(matchClass) {
var elems = document.getElementsByTagName('*'), i;
for (i in elems) {
    if((' ' + elems[i].className + ' ').indexOf(' ' + matchClass + ' ')
            > -1) {
        elems[i].innerHTML = elems[i].getAttribute('data-href');
    }
}
}
replaceContentInContainer('fb-like');
</SCRIPT>

函数替换内容容器(matchClass){
var elems=document.getElementsByTagName('*'),i;
for(i在elems中){
if(“”+elems[i].className+“”).indexOf(“”+matchClass+“”)
> -1) {
elems[i].innerHTML=elems[i].getAttribute('data-href');
}
}
}
替换内容容器(“fb-like”);

可能javascript使用类访问元素,该元素中有一些id/数据,可以让服务器知道喜欢什么。听起来是个不错的建议。我在这里读一篇关于这个的帖子。。。如果有人有任何其他更具体的建议或例子,请分享。谢谢
<SCRIPT>
function replaceContentInContainer(matchClass) {
var elems = document.getElementsByTagName('*'), i;
for (i in elems) {
    if((' ' + elems[i].className + ' ').indexOf(' ' + matchClass + ' ')
            > -1) {
        elems[i].innerHTML = elems[i].getAttribute('data-href');
    }
}
}
replaceContentInContainer('fb-like');
</SCRIPT>