Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.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 替换“;“保存到Foursquare”;带有自定义按钮的按钮_Javascript_Foursquare - Fatal编程技术网

Javascript 替换“;“保存到Foursquare”;带有自定义按钮的按钮

Javascript 替换“;“保存到Foursquare”;带有自定义按钮的按钮,javascript,foursquare,Javascript,Foursquare,我正在尝试替换可在此处设置的通用“保存到foursquare”按钮: 我想用我自己定制的Foursquare按钮来替换它(由FourHead创作的SVG版本,这里由Zurb基金会发布),并且没有脚本自动擦除并用预先打包的Foursquare保存按钮替换我的自定义按钮。 我非常确定我只需要使用这里的文档编写我自己的解决方案:--但是我有点困惑。但愿那里有例子 我在一个页面上还有几个按钮,引用了各种vCard(多个博物馆位置)。为此,我使用了以下答案中的数据上下文属性:。这一切都在起作用 我正在使用

我正在尝试替换可在此处设置的通用“保存到foursquare”按钮:

我想用我自己定制的Foursquare按钮来替换它(由FourHead创作的SVG版本,这里由Zurb基金会发布),并且没有脚本自动擦除并用预先打包的Foursquare保存按钮替换我的自定义按钮。 我非常确定我只需要使用这里的文档编写我自己的解决方案:--但是我有点困惑。但愿那里有例子

我在一个页面上还有几个按钮,引用了各种vCard(多个博物馆位置)。为此,我使用了以下答案中的数据上下文属性:。这一切都在起作用

我正在使用我自己的html:

 <span id="venue1-foursquare" class="fc-webicon foursquare" data-context="venue1_vcard">save Venue 1 to foursquare</span>
将场馆1保存到foursquare
以及稍后的页面:

 <span id="venue2-foursquare" class="fc-webicon foursquare" data-context="venue2_vcard">save Venue 2 to foursquare</span>
将场馆2保存到foursquare

如何做到这一点?

好的,我知道在发布这个问题之前,我应该继续搜索和修补

多亏了vnads,我了解了如何设置全局onReady功能。我将其设置为使用jqueryeach(),循环跨越,获取数据上下文值,然后将功能附加到我的DOM元素。这里的关键点来自vnads在(当前)已被接受的解决方案末尾的评论:foursquare正在寻找DOM元素,而不是jQuery对象

哦,还有widget.attach()而不是widget.replace()可以防止自定义图形被覆盖

<!-- 4Square js: -->
<script type='text/javascript'>
(function() {
    window.___fourSq = {
        "explicit": false,
        "onReady": function () {
            $('.fc-webicon.foursquare').each(function() {
                var this_widget = $(this);
                var this_context = this_widget.data("context");
                var widget = new fourSq.widget.SaveTo({
                    "context": this_context
                });
                widget.attach(this_widget[0]);
            });
        }
    };
    var s = document.createElement('script');
    s.type = 'text/javascript';
    s.src = 'http://platform.foursquare.com/js/widgets.js';
    s.async = true;
    var ph = document.getElementsByTagName('script')[0];
    ph.parentNode.insertBefore(s, ph);
})();
</script> 

(功能(){
窗口。四平方英尺={
“明确”:错误,
“onReady”:函数(){
$('.fc webicon.foursquare')。每个(函数(){
var this_widget=$(this);
var this_context=this_widget.data(“context”);
var widget=new fourSq.widget.SaveTo({
“上下文”:这是上下文
});
widget.attach(此_小部件[0]);
});
}
};
var s=document.createElement('script');
s、 类型='text/javascript';
s、 src='1〕http://platform.foursquare.com/js/widgets.js';
s、 异步=真;
var ph=document.getElementsByTagName('script')[0];
ph.parentNode.insertBefore(s,ph);
})();