Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.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 JQuery Mobile在实现Facebook时忽略了数据角色_Javascript_Jquery_Facebook_Facebook Graph Api_Jquery Mobile - Fatal编程技术网

Javascript JQuery Mobile在实现Facebook时忽略了数据角色

Javascript JQuery Mobile在实现Facebook时忽略了数据角色,javascript,jquery,facebook,facebook-graph-api,jquery-mobile,Javascript,Jquery,Facebook,Facebook Graph Api,Jquery Mobile,我正在尝试在我的应用程序中实现Facebook功能。第一个功能是能够使用facebook登录。第二个允许用户将好友从facebook导入应用程序 然而,问题是当我使用FBAPI时,JQuery移动功能停止了 如果我删除Facebook的API代码,这个布局就完美了。这意味着,如果我将数据角色集的字段集添加到controlgroup,那么JQuery样式和函数都不会应用于元素及其子元素 有人知道这个问题的解决办法吗?(应该有更多的JQuery移动应用程序使用社交API) Controller.js

我正在尝试在我的应用程序中实现Facebook功能。第一个功能是能够使用facebook登录。第二个允许用户将好友从facebook导入应用程序

然而,问题是当我使用FBAPI时,JQuery移动功能停止了

如果我删除Facebook的API代码,这个布局就完美了。这意味着,如果我将数据角色集的字段集添加到controlgroup,那么JQuery样式和函数都不会应用于元素及其子元素

有人知道这个问题的解决办法吗?(应该有更多的JQuery移动应用程序使用社交API)

Controller.js

this.handleContactsFacebook = function () {
        this.initialize();

        function retrieveContacts () {
            FB.api('/me/friends/?fields=id,first_name,middle_name,last_name,username,name', function(response) {
                (new Contact()).showContactListFacebook(response.data);
            });
        }

        FB.getLoginStatus(function (data) {
            if (data.status === 'connected') {
                retrieveContacts();
            }
            else if (data.status === 'not_authorized') {
                $.mobile.changePage("menu.html");
            }
            else {
                $.mobile.changePage("menu.html");
            }
        });
    };
contact.js

this.showContactListFacebook = function (contacts) {
        var fieldset = $("<div data-role=\"fieldcontain\">" +
        "<fieldset data-role=\"controlgroup\">" +
            "<legend>Agree to the terms:</legend>" +
            "<input type=\"checkbox\" name=\"checkbox-1\" id=\"checkbox-1\" class=\"custom\" />" +
            "<label for=\"checkbox-1\">I agree</label>" +
            "</fieldset>" +
        "</div>");
        $("fieldset").remove();
        $("#contactsFacebook").prepend(fieldset);
    };
this.showContactListFacebook=功能(联系人){
变量字段集=$(“”+
"" +
“同意条款:”+
"" +
“我同意”+
"" +
"");
$(“字段集”).remove();
$(“#contactsFacebook”).prepend(字段集);
};

尝试在代码中添加
jQuery.noConflict()
。 我认为facebookapi可能会使用$token和jquery(因此jquerymobile也会使用)

更多信息请点击此处:


您还可以尝试用jquery替换$for jquery代码,看看这是否解决了冲突,即replace
$(“fieldset”).remove()jQuery(“fieldset”).remove()进行编码>

Firebug JS控制台中有错误吗?Firebug控制台中只显示我的控制台输出和GET请求。您没有应用任何增强方法。尝试
$(“contactsFacebook”)。触发(“创建”)。检查这个@Omar似乎已经解决了问题,您是如何发现应该使用触发器(“创建”)的?因为我从来没用过,而且一切都很完美。