Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.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
JSNIGWTjQuery_Gwt_Jsni - Fatal编程技术网

JSNIGWTjQuery

JSNIGWTjQuery,gwt,jsni,Gwt,Jsni,我有一个文件jQuery来创建翻转卡片效果,我将其更改为JSNI,使用本机函数但出现错误。我不知道怎么了。有人能帮我吗? 这是我的本机功能: public native void flip() /*-{ $(document).ready(function () { $('#nav-list-example div div.back').hide().css('left', 0); function mySideChange(front) { if (front

我有一个文件jQuery来创建翻转卡片效果,我将其更改为JSNI,使用本机函数但出现错误。我不知道怎么了。有人能帮我吗? 这是我的本机功能:

public native void flip() /*-{
$(document).ready(function () {
    $('#nav-list-example div div.back').hide().css('left', 0);

    function mySideChange(front) {
        if (front) {
            $(this).parent().find('div.front').show();
            $(this).parent().find('div.back').hide();

        } else {
            $(this).parent().find('div.front').hide();
            $(this).parent().find('div.back').show();
        }
    }

    $('#nav-list-example div').hover(
        function () {
            $(this).find('div').stop().rotate3Di('flip', 250, {direction: 'clockwise', sideChange: mySideChange});
        },
        function () {
            $(this).find('div').stop().rotate3Di('unflip', 500, {sideChange: mySideChange});
        }
    );
});
         }-*/;
$wnd.$($doc).ready(函数($){…

使用
$
作为回调函数的参数应该允许在函数内部使用
$
而不是
$wnd。$

我始终使用以下方法:

$wnd.jQuery($doc).ready(function(){});
在函数内部,您可以为jQuery创建一个“别名”,例如:

function(){
  var _ = $wnd.jQuery;
  // go on....
}
希望有帮助:)



顺便说一句:这就是我们在GWT引导中如何做到的。

(在GWTP下)知道我为什么必须使用ViewImpl#onAttach而不是$.ready吗?请参阅我的另一个问题的答案。谢谢现在出现我的答案(链接在上面的评论中)GWTP延迟加载意味着可以在加载所有视图/演示者之前加载DOM。因此,对于GWT来说,ViewImpl#onAttach是必需的,而不是$。Readyth对于所有GWT应用程序来说都是如此,因为onModuleLoad的调用不早于DOMContentLoad,可能在.OK之后。那么,在这种情况下,如何使用$.ready()呢如果onModuleLoad()对于完全准备好DOM元素很重要,那么在调用其回调时应该在DOM中包含所有元素?除非我遗漏了什么?这里的想法是在对元素执行$jQuery选择之前确保元素在DOM中?