Jquery在混合android中不起作用,但在网络中起作用

采得百花成蜜后,为谁辛苦为谁甜。这篇文章主要讲述Jquery在混合android中不起作用,但在网络中起作用相关的知识,希望能为你提供帮助。
我试图在我的混合应用程序中使其工作,但是它不希望起作用,有人知道为什么它不起作用吗?

jQuery().ready(function () {$("#b4all_about").bind('click', function (e) { //alert(); $("#tbb4all_about").removeClass("b4DisplayNone").addClass("b4DisplayBlock"); $("#tbb4all_works").removeClass("b4DisplayBlock").addClass("b4DisplayNone"); $("#tbb4all_join").removeClass("b4DisplayBlock").addClass("b4DisplayNone"); }); $("#b4all_works").bind('click', function (e) { $("#tbb4all_about").removeClass("b4DisplayBlock").addClass("b4DisplayNone"); $("#tbb4all_works").removeClass("b4DisplayNone").addClass("b4DisplayBlock"); $("#tbb4all_join").removeClass("b4DisplayBlock").addClass("b4DisplayNone"); }); $("#b4all_join").bind('click', function (e) { `enter code here`$("#tbb4all_about").removeClass("b4DisplayBlock").addClass("b4DisplayNone"); $("#tbb4all_works").removeClass("b4DisplayBlock").addClass("b4DisplayNone"); $("#tbb4all_join").removeClass("b4DisplayNone").addClass("b4DisplayBlock"); }); });

我的MainActivity看起来像:
WebView web = new WebView(this); SetContentView(web); web.Settings.javascriptEnabled = true; web.AddjavascriptInterface(new JS2CS(this), "JS2CS"); web.LoadUrl(mobile2.security.key.content);

按钮如下:
< div style="width: 100%; align-items: center"> < div class="sGeneral" id="b4all_about"> About us< /div> < div class="sGeneral" id="b4all_works"> How it works< /div> < div class="sGeneral" id="b4all_join"> Join us< /div> < /div>

【Jquery在混合android中不起作用,但在网络中起作用】以及隐藏的div像这样:
< table> < tr> < td> < div id="tbb4all_about" class="b4DisplayNone"> 1< /div> < div id="tbb4all_works" class="b4DisplayNone"> 2< /div> < div id="tbb4all_join" class="b4DisplayBlock"> 3< /div> < /td> < /tr> < /table>

关于某事可能是一个问题,但我不确定它是一个Web应用程序,但使用普通的jQuery作为:
< script src="https://www.songbingjia.com/android/js/jquery-2.1.1.min.js"> < /script> < script src="https://www.songbingjia.com/android/js/jquery-ui-1.10.4.js" type="text/javascript"> < /script> < link href="https://www.songbingjia.com/android/css/ui-lightness/jquery-ui-1.10.4.min.css" rel="stylesheet" /> < link href="https://www.songbingjia.com/android/css/ui-lightness/jquery-ui-1.10.4.css" rel="stylesheet" />

已经感谢您的忠告]
----- UPDATE -----我检查Xamarin中的日志,然后看到:
E / eglCodecCommon(2140):****错误未知类型0x65080020(gLSizeof,73)“未捕获的SyntaxError:意外的令牌http://192.168.0.16:8081/home.aspx/js/jquery-2.1.1.min.js(3)I / chromium(2140):[INFO:CONSOLE(3)]“未捕获的语法错误:意外的令牌http://192.168.0.16:8081/home.aspx/js/jquery-2.1.1.min.js(3)“未捕获的SyntaxError:意外令牌http://192.168.0.16:8081/home.aspx/js/jquery-ui-1.10.4.js(3)“未捕获的ReferenceError:未定义$”,来源:http://192.168.0.16:8081/home.aspx/(53)I / chromium(2140):[INFO:CONSOLE(3)]“未捕获的语法错误:意外的令牌http://192.168.0.16:8081/home.aspx/js/jquery-ui-1.10.4.js(3)
不知道为什么它试图像这样加载js脚本,我应该如何将包含的jQuery传递给客户端?
我发现了无法加载的原因,我在网页中包含了要加载到混合android应用程序中的网页,加载失败。我是否应该将这些内容包含到应用程序中,还有其他关于jquery包含内容的引用。
我的jQuery是这样的:
< script src="https://www.songbingjia.com/js/jquery-2.1.1.min.js"> < /script> < script src="https://www.songbingjia.com/js/jquery-ui-1.10.4.js" type="text/javascript"> < /script> < link href="https://www.songbingjia.com/css/ui-lightness/jquery-ui-1.10.4.min.css" rel="stylesheet" /> < link href="https://www.songbingjia.com/css/ui-lightness/jquery-ui-1.10.4.css" rel="stylesheet" />

答案尝试此
WebView wb = new WebView(this); wb.getSettings().setJavaScriptEnabled(true); wb.getSettings().setDomStorageEnabled(true); wb.getSettings().setAllowFileAccessFromFileURLs(true); wb.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);

将上述功能添加到您的webView中。它可能有用,但我没有测试。
另一答案工作正常。尝试执行它。我的问题是Https。当我在xamarin.android中使用http时,会抛出上述错误。但是在https上工作正常。
< html> < body> < script src="http://img.readke.com/220523/092Q11005-4.jpg"> < /script> < h1> HybridWebView Test< /h1> < br /> Enter name: < input type="text" id="name"> < br /> < br /> < button type="button" onclick="javascript: invokeCSCode($('#name').val()); "> Invoke C# Code< /button> < br /> < p id="result"> Result:< /p> < script type="text/javascript"> function log(str) { $('#result').text($('#result').text() + " " + str); }function invokeCSCode(data) { try { log("Sending Data:" + data); invokeCSharpAction(data); } catch (err) { log(err); } } < /script> < /body> < /html>


    推荐阅读