Articles of JavaScript

javascript + phoneGap – 如何检测何时处于活动状态的电话

我search了这个问题,这个问题一直没有得到答复,我想知道是否有人可以帮助解决这个问题。 使用JavaScript库和phonegap,我想打一个电话,当接听电话时向接收者播放一个audio文件。 此audio只能播放给收件人,不能通过电话扬声器播放。 换句话说,audio是作为活动呼叫的一部分播放的。 一个例子是当打电话给一个本地商店,并且呼叫被保持,同时为呼叫者播放音乐。 问题1)是否有任何人都知道的技术或插件能够检测到实际进行通话/应答的时间? 问题2)如何在通话过程中播放预先录制的audio.mp3? 任何帮助或指针将不胜感激,

某些Android设备/ Chrome上的HTML5数字input中没有小数位

在某些Android设备上创buildHTML5数字input字段不会显示任何小数位。 <input type="number" step="0.001" min="0" name="foo" /> 这很麻烦,因为我正在尝试编写HTML5 + Javascript应用程序。 它目前适用于IOS以及一些(最?)Android设备。 只是一些Android版本/品牌不会在popup的数字键盘上显示小数位。 例如在Galaxy S3上,应用程序本身工作正常,但如果在Chrome中打开相同的代码,则不会显示小数点。 我正在使用这个组合来testing并尝试解决这个错误。 这里的问题是 – 有没有什么办法来使用Javascript来检测键盘不会显示小数点? 在这种情况下,我可以通过编程方式将numbertypes更改为text ,但我只想为需要的设备执行此操作。 (另外,有没有办法强制小数点出现在键盘上?我的研究迄今表明,没有,这就是为什么我要问的解决方法,而不是。 我尝试过使用各种步骤( any , 0.1等),设置模式,设置起始值为十进制( value="0.1" )都无济于事。 我试过检测浏览器可以处理数字字段,但是这会报告为“真”…设备可以处理数字字段,他们只是处理它们: var i = document.createElement("input"); i.setAttribute("type", "number"); i.setAttribute("step", "0.001"); alert(i.type + ' and ' + i.step); // gives "number and 0.001", so the device has stored the values […]

在HTML / JavaScript(Android)中解码2d数据matrix条码

背景:我需要用我的android手机的相机扫描数据matrix条码。 我通过html5访问摄像头,并将图片转换为canvas元素。 方法:我无法find一个JavaScript库来扫描图片来解码2D数据matrix代码。 其实我打电话给ZXing的应用程序,复制和后退等,所以我不满意这个辛苦的解决scheme。 问题:有人知道用于解码2D数据matrix码的JavaScript库吗? 或者,也许使用ZXing / Goggles等另一个应用程序的简单解决scheme,并获得扫描的结果自动回到JS? 我会很感激你的意见。

离子2卷轴性能问题

留下深刻的印象与博客和有关ionic2和Angular2的评论,我开始写在离子2的应用程序,并发现ion2滚动性能是不好的iOS和Android的大量logging。 在大多数列表项中,图像之间有大量的项目列表 滚动性能对于10到20个项目是好的,但对于30个以上的项目则非常慢 经过大量的search发现在离子虚拟滚动和使用它,然后性能略有提高,多达50个项目,但65 +项目后再次缓慢 我在iOS上尝试了WKWebview,在性能上有了一些改进,但是经常屏幕变成黑色,因此我放弃了这个想法。 由于应用程序的大小增加,我不想使用人行横道,所以从来没有尝试过。 任何人可以帮助build议任何解决方法来解决这个问题或任何纯JavaScript框架的解决scheme,以显示大列表没有任何问题? 为Android和ios。

Android浏览器 – JavaScript window.innerWidth返回错误的值

我正在使用Android G1默认的网页浏览器,而且我正在使用JavaScript进行开发 – 当我放大或缩小网页时,无法获得真实的视觉宽度和高度。 看来,我正在从window.innerWidth,当我放大/缩小出错的值。 我想要做的是 – 在视觉固定的位置显示一个元素,即使在缩放和滚动页面时也是如此。 – 所以用户总是可以看到那个元素,不pipe他是在缩放还是在滚动。 我已经尝试使用“固定”的位置没有成功。 视口元标记的使用可能不是一个好的解决scheme,因为我不想限制网页的尺寸,我希望缩放function将被支持。 有没有人有一个解决scheme或想法如何我可以做到这一点?

当OS暂停时恢复Android的webview /在后台的应用程序上运行JavaScript?

首先closures我正在处理一个应用程序,当应用程序不在前台时需要运行JavaScript; 问题似乎是,当应用程序被放入后台/ webview从屏幕上分离时,webview的onPause方法被调用,每个文档执行以下操作:“暂停与此WebView及其关联的DOM相关的额外处理,插件,JavaScript等“ 从我迄今为止发现,我最好的select似乎是使用reflection来调用webview的“onResume”方法,它应该撤销所有这些进程暂停。 用我目前的实现,我得到了一个实例的方法,但是当调用什么都没有发生,因为我的后续JavaScript调用什么都不做(当我打开应用程序并在前台时,请注意,这是有效的)。 其他人看到我的代码问题或有一个解决scheme,当您的应用程序在后台运行JavaScript没有完全启动应用程序? 推送消息来说,JavaScript需要运行,所以意图发送通知在后台运行的服务: Intent intent = new Intent( "some action" ); intent.putExtra( "xtifyJson", xtifyJSON.toString() ); context.sendBroadcast( intent ); 在我的广播接收器的接收器中,居住在后台的服务总是在运行: final String stringArrayExtra = intent.getStringExtra( "xtifyJson" ); if ( !Text.isNull( stringArrayExtra ) ) { new Handler( context.getMainLooper() ).post( new Runnable() { @Override public void run() { try { Log.d( "Hey Dev Guy", […]

在Android 4.4 Webview中使用shadow-dom(Polymer)

实际上,我使用自定义的Polymer元素(基于Web组件和Shadow-dom)构build了一个Web应用程序,但是我遇到了一个严重的问题。 我希望这个应用能够在Android 4.4 WebView上运行,但是在WebView上testing应用时遇到了一些问题,尽pipe它在Chrome(Android和Desktop)上运行得非常好。 当我尝试从CSS(使用:: shadow或/ deep /)或从纯js访问一个shadowRoot元素时,会发生此问题。 这是我的问题的一个简单的例子: <!– custom-elt.html –> <link rel="import" href="../bower_components/polymer/polymer.html"> <polymer-element name="custom-elt"> <template> <div id="elt">some content</div> </template> <script> Polymer('custom-elt',{ getElt: function(){ return this.shadowRoot.getElementById('elt'); } }); </script> </polymer-element> // script.js window.addEventListener('polymer-ready',function(){ var e = document.getElementsByTagName('custom-elt')[0]; alert(e.getElt().innerHTML); }); 在Chrome上完美工作,但不在WebView中。 根据caniuse.com的说法,shadow-dom是由Android 4.4浏览器(它被WebView使用的)支持的,它带有'webkit'前缀( http://caniuse.com/#feat=shadowdom ),但是我没有'find一个使用前缀的方法。 任何解决scheme 谢谢 巴蒂斯特

语音识别API重复在Android上的短语

我发现, 语音识别API在我的Android上复制了结果短语(并且在桌面上不重复)。 对于每个短语说,它返回两个结果。 第一个是 第二个是 正如你看到的,在第二个返回中,短语是重复的,每个副本被标记为final而第二个则超出resultIndex 。 在第一个返回中只有一个副本,它是final ,它超出了resultIndex 。 我只会拿第二个回报,但问题是,它发生在移动的Chrome,但不会发生在桌面的Chrome 。 桌面版Chrome只返回第一个回报。 那么问题是:这是否是devise行为? 那么如何区分所有电脑的单个最终词组? 或者可能是这样的声音回声一些错误,那么问题是如何避免/检查回声? UPDATE Html如下: <input id="recbutton" type="button" value="Recognize"> <div id="output"> <div> Initial text </div> </div> 代码如下: var recognition = null; var recognitionStarted = false; var printcount = 1; var lastPhrase = null; $(function() { attachRecognition(); }); $('#recbutton').click( function() { if( !recognitionStarted […]

Android中的WebView文本缩放问题

我在android中有一个文档阅读器项目。 主要活动包括一个WebView。 文本是从HTML阅读。 在顶部选项菜单中包含一个dynamic增加文本大小的button(文本正在打包)。 到目前为止如此清楚,但按下button时,文本大小有所增加,但所有文本都在屏幕上向下移动,按下button两次,文本大小增加,所有文本再次向下移动。 这种情况真的让读者感到沮丧。 阅读器按下button后,必须返回到停止的位置,以免阅读器丢失阅读位置。 如何解决这个问题呢? 问题: 解决问题的时候: 我的WebView的Html内容: <!DOCTYPE html> <head> <style type="text/css"> p{} p.x1{} p.x2{} p.x3{} p.x4{} h2.x1{} h2.x2{} h2.x3{} h2.x4{} </style> </head> <body> //paragraph-1 <p class="x1">Title-1</p> <p class="x2">Title-2</p> <p class="x3">Title-3</p> <p class="x4">Title-4</p> <p>Text content.</p> //paragraph-2 <h class="x1">Title-1</p> <h class="x2">Title-2</p> <p>Text content.</p> //paragraph-3 <h class="x3">Title-1</p> <h class="x4">Title-2</p> <p class="x3">Title-3</p> <p>Text content.</p> […]

我可以使用socket-io服务工作吗?

我想推送通知到桌面和移动。 为此我遵循这篇文章: https : //developers.google.com/web/updates/2015/03/push-notifications-on-the-open-web?hl = zh_CN 我有两个问题: 可以使用推送通知在所有标签closures后发送通知(Chrome重新启动?) 我可以通过使用socket.io触发通知,例如io.on('message')而不是GCM ?