Articles of JavaScript

固定定位在Android 2.3浏览器应该工作…应该不是吗?

从网上看,我的理解是,固定的定位应该在Android 2.3中工作,如果有一个正确的元标记设置。 这是我目前的视口设置。 <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" /> 在我的Galaxy S2上,具有固定位置的div(基本上它是页面顶部的一个细页眉)在向下滚动页面时不会保留在原位。 它随着页面移动。 但是,当您停止滚动时,它会再次跳转到页面的顶部。 这是Android 2.3的预期定位行为吗? 有没有更好的方式来做到这一点(希望不会涉及到iPSroll的庞大复杂性)?

Android – 如何使用PhoneGap Share插件

我正在尝试使用PhoneGap Share插件,这个插件应该会显示原生Android“共享”窗口,允许用户select要共享的应用程序。 https://github.com/phonegap/phonegap-plugins/tree/master/Android/Share 我有一个超链接调用以下代码(在github上提供)。 window.plugins.share.show({ subject: 'I like turtles', text: 'http://www.mndaily.com' }, function () {}, // Success function function () { alert('Share failed') } // Failure function); 当试图在手机上debugging应用程序时,出现以下错误: 无法在file:///android_asset/www/index.html处调用未定义的方法“show” 我需要做些什么才能使这个工作?

Android webview“未捕获的SyntaxError:意外的令牌非法”

在我的android程序中,我得到了一个webview,并需要dynamic地设置值到webview元素(textareas,checkbox等)。 我有一个JavaScript方法从程序接收值,并执行string操作,并将值存储到正确的元素。 但我总是得到这个错误…有点卡在这里。 任何帮助将不胜感激。 我成功地执行了w3schools TryIt编辑器中的脚本,但没有在程序中工作! final WebView webView = new WebView(getApplicationContext()); LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT, 1); webView.setLayoutParams(params); webView.setBackgroundColor(Color.LTGRAY); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setDomStorageEnabled(true); webView.setWebChromeClient(new android.webkit.WebChromeClient()); webView.setWebViewClient(new WebChromeClient()); webView.loadData("<!DOCTYPE html><html><body>"+ questionsArray[questionIndex] +"</body></html>", "text/html", "UTF-8"); webView.addJavascriptInterface(javaScriptInterface, "HtmlViewer"); scrolRootLayout.addView(surveyWebView); 和我的Javascript方法来设置webView中的textareas值 function myFunction(var_) { var str = var_.replace("-!!!-",""); var pipeSplitedArray = str.split("||"); for(var i=0; i<pipeSplitedArray.length-1; i++) { if(pipeSplitedArray[i].indexOf("-!@!-") == […]

捏放大webview

在我的网站,这是在web视图中加载,有一个地图。 也有Java脚本检测双击缩放,拖动等。但是有可能有一个JavaScript检测使用捏缩放? 有几个例子,它在iPhone上工作,并在我的网站上有一个捏缩放的脚本,但它只是在iphone上工作….. 是否有可能让它在Android上工作? 谢谢

我可以传递一个Javascript对象到一个Android WebView吗?

我正在将一个Web应用程序迁移到一个Android版本。 在收到并处理了JSON数据之后,我在页面中保存了一个Javascript对象数组。 我怎样才能将一个JavaScript对象的完整内容“out”传递给webview容器,以使用原生android控件进行显示? 最终,我可以创build一个JavaScript接口,其中包含每个可能的JavaScript对象属性的参数 – 但这似乎过于沉重。 有人能帮忙吗 ?

开发具有相同API的网站

我只熟悉原生移动开发,而不是网站开发,所以请原谅我的天真。 移动应用程序的API通常涉及通过POST或从API获取数据的请求。 数据将作为JSON返回。 为了这个例子,想象一下,API是一个由Sinatra / Ruby提供的简单API,它将被移动设备和网站所使用。 什么是使用相同的范例网站开发的选项 – 与Web前端从移动应用程序相同的JSON端点获取数据? 我听说过AngularJS和Backbone.js的名字,尽pipe也许Sinatra就够了? 我不想使用PHP。 我宁愿一个轻量级的解决scheme。 如果可能的话,我希望能够在模型更改时更新页面,但我猜这取决于后端API的更改。

我可以触发Android软键盘通过JavaScript打开(没有phonegap)?

我在我的移动networking应用程序中有一些自定义Web组件,而我需要在一个字段上手动激发“焦点”事件,以模拟Android软键盘function中的“下一个”function。 (使用Galaxy S3本机浏览器)。 但是,当我在“select”字段上手动激发焦点事件时,本机软键盘不显示。 我必须随后点击该字段才能显示。 (在IOS中,当然,它工作得很好)。 所以我想知道,如果“焦点”事件不触发软键盘打开,什么JS事件? 我不使用phonegap,所以我希望没有它的方式。 谢谢你的帮助!!!

android webview.loadUrl将不会加载另一个网页

在我简单的Android应用程序中,我编程加载WebView中的网页。 它最初是从一个默认的网页开始的,下一个是根据第一个用户的input加载的。 JavaScript通过消息将信息传递回Android的一面。 一切工作正常,除非第二个网页不加载,无论我做什么,我给的是哪个url。 当我加载第二个testing时,会出现一个警告:“所有WebView方法必须在同一个线程上调用”。 但据我所知,我不使用multithreading,也不需要使用multithreading。 以下是相关的代码: public class MainActivity extends Activity { public WebView myWebView; public int state; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_main); myWebView = (WebView) findViewById(R.id.webview); WebSettings myWebViewSettings = myWebView.getSettings(); myWebViewSettings.setJavaScriptEnabled(true); myWebViewSettings.setDomStorageEnabled(true); myWebViewSettings.setAllowFileAccessFromFileURLs(true); myWebViewSettings.setAllowUniversalAccessFromFileURLs(true); myWebView.addJavascriptInterface(new JavascriptHandler(), "cpjs"); state = 0; loadNextTest(); } public void webviewLoadURL(String url) { […]

ANDROID / WEBVIEW- Uncaught TypeError:Object 在文件中没有方法'changeActivity':

我想用一个input框的web视图,采取string,并将其传递给第二个活动。 出于某种原因,button没有做任何事情,我得到的错误: Uncaught TypeError:Object [object Object]在文件中没有方法'changeActivity':///android_asset/www/index.js:3 所以我的HTML这样说: <input id="name" value="" />&nbsp;&nbsp;&nbsp; <button onclick="checkMovie()"> Check it! </button> 我的JS说这个: function checkMovie() { var movieName = document.getElementById('name').value; webapi.changeActivity(movieName);} 和我的Android代码说: public class MainActivity extends Activity implements OnClickListener { // Setting up known variables JavaScriptInterface JSInterface; Button find; @SuppressLint("SetJavaScriptEnabled") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // changing main layout […]

Android WebView:非常滞后的button响应

我有一个我用Android的WebViewfunction玩的小应用程序。 我有一些div用作button(带有onclick属性)。 一旦尝试了应用程序(在设备的浏览器), 我立即注意到一个button后,大量的滞后。 当我点击button和浏览器周围显示橙色高光时,滞后就会出现。 我做了一些testing,并得到一些信息: JavaScript不是问题。 我取消了所有脚本的链接,并删除了所有onclick属性。 performance没有改变。 CSS3的东西不是问题。 我摆脱了所有的幻想渐变,性能没有改变。 元素的数量不是问题。 我试了一下,只是在页面上的几个元素,性能没有改变。 Doctype和meta的东西不是问题。 我确定我正在使用Android 推荐的内容 。 我真的不知道为什么会有这么多的滞后。 我已经消除了可能造成的一切,但没有什么帮助。 我错过了什么吗? 点击button后,如何消除滞后?