使用Knockout.js动态更改facebook数据
Change facebook data-* dynamically with Knockout.js
我想更改类似facebook的按钮设置,比如wix.com的HTML编辑器。
我创建了一个视图模型:
<script>
//Asynchronous JavaScript loading
(function (d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
var viewModel = {
//Facebook Button
LayoutStyles: ko.observableArray([
{ Title: "Standart", Value: "standart" },
{ Title: "Button", Value: "button_count" },
{ Title: "Box", Value: "box_count" }]),
ColorSchemes: ko.observableArray([
{ Title: "Light", Value: "light" },
{ Title: "Dark", Value: "dark" }]),
selectedStyleValue: ko.observable(),
selectedColorValue: ko.observable(),
withFaces: ko.observable(false),
withSend: ko.observable(true),
width: ko.observable(450)
};
ko.applyBindings(viewModel);
</script>
我放置了一个类似于这样的fb按钮:
<div id="fb-root">
</div>
<div class="fb-like" data-bind="attr:{ 'data-width':width,'data-send':withSend,'data-show-faces':withFaces}">
<h4>Facebook Like Button Settings </h4>
<div class="control-group">
<label class="control-label" style="white-space:nowrap;">Layout Style</label>
<div class="controls">
<select class="" data-bind="options:LayoutStyles,optionsText:'Title',optionsValue:'Value',value:selectedStyleValue"></select>
</div>
</div>
<div class="control-group">
<label class="control-label" style="white-space:nowrap;">Color Scheme</label>
<div class="controls">
<select data-bind="options:ColorSchemes,optionsText:'Title',optionsValue:'Value',value:selectedColorValue"></select>
</div>
</div>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" data-bind="checked:withFaces" /> Show Faces
</label>
</div>
</div>
<div class="control-group">
<label class="control-label">Width</label>
<div class="controls">
<input type="text" id="fbWidth" data-bind="value:width, valueUpdate:'afterKeyDown'" />
</div>
</div>
</div>
我更改了宽度输入,但它在fb-button中不起作用。我缺少什么。谢谢你的建议。。。
需要自定义绑定,以强制FB API在绑定完成后重新解析嵌入标记。查看此指南:
http://weblogs.asp.net/jimwang/implementing-a-facebook-like-button-with-knockout-js
相关文章:
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 使用Knockout.js动态更改facebook数据
- Facebook网络数据API和D3.JS
- 如何使用jquery登录Facebook用户后检索数据
- facebook共享og:url覆盖从og:title获取的数据
- Sharrre-Facebook数据文本和数据url没有显示在多个按钮上
- JQuery Mobile在实施Facebook时忽略了数据角色
- Facebook Api获取好友总数,但不是好友数据
- 用户如何从我的服务器获取数据作为通往Facebook的桥梁
- Facebook是否可以获取用户的数据并在iframe中填充表单
- Facebook OG 数据未更新
- Facebook 在发布“打开图”操作时返回空数据属性
- 如何更改此示例 Facebook 代码以自动发布提要数据
- 避免Facebook从网页中提取og元标记数据/或抓取
- html 响应数据 ID 不能在 Facebook API 调用中用作字符串
- 如何从返回的Facebook图形API哈希中提取数据
- 在yii中使用facebook数据
- 在html上编写facebook数据
- I'我正在尝试使用Ajax捕获facebook数据,并将其写入名为test.txt的文本文件中
- jsonp请求不显示facebook数据