Articles of JavaScript

mediaelement.js自动播放在移动设备上不起作用

我正在使用mediaelement.js来显示video。 我正在使用这个代码: <body> <video id="player1" style="width: 100%; height: 100%;" preload="auto" autoplay="true" src="video.mp4" /> <script> $('video').mediaelementplayer({ features: ['playpause','progress','current','duration','tracks','volume','fullscreen'], }); var player = new MediaElementPlayer('player1'); player.play(); </script> </body> 当页面加载时,我想自动启动video。 这在桌面浏览器中工作正常,但是,在移动浏览器中,video不会自动播放。 我究竟做错了什么?

Firebug就像在Android上进行debugging一样

我曾经看过几篇文章,谈论Android上的JavaScript代码的远程debugging,但是他们都错过了我想要做的事情。 我有一个Nexus 7,我想远离我的桌面时使用它作为远程开发环境。 我创build了一个chrooted的debian发行版来运行apache,php和git(通过ssh)。 这个chroot环境从chroot环境外挂载/ sdcard目录的一个子目录。 虚拟主机的Apache文档根目录指向此目录中的一个目录。 在离开桌面之前,我可以把最新的版本推到平板电脑上。 当我回到git拉可以得到我已经做了什么。 然后,我(当离开家,而不是连接到任何networking)可以编辑代码使用Android编辑器(使用920文本编辑器),但然后运行浏览器来看看我已经开发使用本地主机的Apache虚拟主机挑选并显示它。 我正在开发的应用程序不是为了Android,它最终是桌面。 但是我想能够像在桌面上一样进行debugging。 断点和单步是主要的东西,但我也倾向于在编辑之前使用萤火虫中的html部分来调整我的CSS。 有没有办法让Chrome开发人员工具或firebug添加到Firefox将加载到将在Android中运行的浏览器?

内联VS包括JS和CSS?

在2G移动连接(〜0.1Mbps)至less有500毫秒延迟的环境中,在服务器的大约5-10个文件中向客户端发送大约10kb的css和js的最快和最有效的方式是什么? 我可以想到三个select: 将所有js合并到一个文件,将所有css合并到一个文件 将所有的css和js文件一一链接 内联一切 我知道谷歌使用内联,但这可能只是为了节省服务器套接字。 他们甚至通过在无状态模式下运行来节省内存 – 他们相信客户要记住他们的会话。 服务器能力根本不是问题。 另一方面,Facebook似乎自动生成他们的CSS(他们的名字是base64编码),但超过10个不同的文件发送给用户,他们似乎甚至没有大量优化它; 只有一些空白删除。 我已经通过一个函数来压缩所有文件,所以这些都是可行的。 我不想select第一个select,因为它更容易。 前两个利用caching(第二个比第一个小),但第二个只需要三个请求到服务器,第三个只需要一个来自服务器的请求(忽略我们可能有的几个图像一些页面)。 Android / iOS是否跨浏览器重启cachingjs和css? 如果没有,那么内联听起来更好。 唯一的目标是最小化用户的平均加载时间。 每个用户每天将花费大约100页的网页加载量,每天查看大约40个CSS和js文件。 CSS和JS基本上是静态的内容。 它被设置为caching30天,如果使用/path/to/file.ext?md5-hash-of-file更改文件,则更改url。 另外,一切都尽可能gzipped。 编辑: 我想我应该澄清我find的第二个选项的两个选项。 在整个站点上使用单个文件用于CSS和js是一个好主意吗? 它只会使用两个请求,并删除任何双(或七段)caching,因为一个function是在两个或两个以上不同的组合js文件,但下载高达1MB听起来不太好。 今天,它基本上是每个视图的一个组合的CSS,所以每次你再次查看同一页时,内容被caching。 但是,一些js和css被用在多个页面上。

Phonegap(3.0.0)第一次尝试相机不成功

出于testing目的,我复制了phonegap相机API上find的完整示例,并在onPhotoDataSuccess上放置了一个警报,以testing函数何时被触发。 在拍摄的第一张照片警报不会显示。 但是,第一次尝试后,照片保存后,警报将显示。 有什么build议? 如果事情不清楚,我会很乐意更具体。 我在Android Galaxy S3上testing了下面的代码 <!DOCTYPE html> <html> <head> <title>Capture Photo</title> <script type="text/javascript" charset="utf-8" src="cordova.js"></script> <script type="text/javascript" charset="utf-8"> var pictureSource; // picture source var destinationType; // sets the format of returned value // Wait for device API libraries to load // document.addEventListener("deviceready",onDeviceReady,false); // device APIs are available // function onDeviceReady() { pictureSource=navigator.camera.PictureSourceType; […]

Facebook邀请在phonegap返回确定

我需要能够邀请朋友到我的Android应用程序。 我用Phonegap使用HTML / js。 与FB的login与插件工作正常,但我不能使邀请工作。 我的代码是: FB.ui( {method: 'apprequests', message: 'test'}, function(response) { alert("res:" + response); } ); 我可以select朋友,它发送请求,但在警报中我得到“res:OK”,而不是朋友的ID。 此外,为了使其工作,我必须configurationAndroid的“网站”平台。 有另一种方法吗? 我想在应用程序中打开已经有应用程序的特定页面。 我的FB设置: Base: App Domains: <empty> Android: Package Name: com.milab.idc.sheets Class Name: com.milab.idc.sheets.ProjectActivity Website: Site URL: https://play.google.com/store/apps/details?id=com.milab.idc.sheets 我的Play商店页面: https : //play.google.com/store/apps/details?id = com.milab.idc.sheets 谢谢

无法构造通知:非法的构造函数

我的网站使用了从未在移动设备上工作过的桌面通知,但最近我开始在Android 4.4的Chrome版本42.0.2311.108中收到以下例外情况: Failed to construct 'Notification': Illegal constructor. Use ServiceWorkerRegistration.showNotification() instead. TypeError: Failed to construct 'Notification': Illegal constructor. Use ServiceWorkerRegistration.showNotification() instead. 我的通知代码很简单,在检查用户是否授予了权限之后,我按如下方式初始化一个新的Notification对象: var notification = new Notification(messageOptions.title, { icon: messageOptions.icon }); 如何更改此代码以使用undefined的ServiceWorkerRegistration.showNotification来支持Chrome的移动版本中的通知,或者如果无法执行function检测并防止发生exception, t支持[尚]。

JavaScript:跟踪Android版Firefox的select更改

我正在寻找一种方法来跟踪网页上的文字select。 每当select发生变化时,我需要执行一些代码。 我已经在所有主stream的桌面浏览器上成功地完成了这个工作,但是对于安卓系统来说,这个工作似乎并没有在Firefox上工作。 我尝试了三种方法(他们都没有工作!): 尝试捕捉"mouseup"事件,并检查是否有非空的文本select。 问题是如果在mousedown-move-up序列中进行了select, "mouseup"不会被触发! 试图做同样的"touchend"事件 – 同样的结果。 尝试捕捉"selectionchange"事件。 我看到当select改变时它不会被触发,因为它需要设置configuration键"dom.select_events.enabled" 。 这是默认为false ,我显然不能要求我的访问者调整浏览器设置:-) 另外,正如所料,如果通过拖动select开始/结束标记来扩展或减lessselect,则前两个事件不会被触发。 我现在能想到的唯一解决scheme是定期轮询器(使用setInterval)来检查是否有文本select。 这绝对是不洁净和反性能。 任何替代scheme和/或build议将是非常有益的。 谢谢

canvas.toDataURL()返回部分损坏的图像

我们有一个Web应用程序(非常间歇地)返回部分损坏的PNG图像数据URL。 图像有一个大的黑色部分覆盖一些图像,但不是全部。 这些图像是客户签名。 例如: 我们正在使用这个签名板组件。 图像URL是使用getSignatureImage()例程返回的。 我从访问日志中看到的唯一一件事情似乎显示了来自“Samsung Galaxy Tab”设备的受到影响的请求,但是使用了Chrome 59.但是来自同一设备的其他请求仍然可以正常工作。 任何帮助赞赏。

使用phonegap在后台执行javascript

我创build了一个应用程序,每隔“X”分钟就需要触发一次javascript事件。 我正在使用电话差距构build部署在Android / iPhone /黑莓,但我当然坚持,因为JavaScript计时器不会在后台触发(当他们最小化的应用程序)。 我想知道是否phonegap有一些能力,当应用程序在后台运行时触发JavaScript事件。 或者有什么办法可以轻松地在这些主stream手机上实现这一点? 我只需要从手机的地理位置信息发射ajax电话。

PhoneGap电子邮件插件

我试图在这里使用插件这是我第一次在Android上开始使用Phonegap,所以对我来说这个过程有点陌生。 到目前为止,我已经将.JAVA文件添加到这里“src.org.apache.cordova”我已经将.JS添加到www文件夹,并在我的HTML文件中引用它。 我已经将以下内容添加到我的config.xml <plugin name="EmailComposer" value="org.apache.cordova.emailComposer"/> 由于README文件并没有详细说明,我假设这是必须在这里进行的价值。 然后我在我的HTML文件中使用以下内容。 window.plugins.emailComposer.showEmailComposerWithCallback(null,"Look at this photo","Take a look at <b>this<b/>:",["example@email.com", "johndoe@email.org"],[],[],true,["_complete_path/image.jpg", "_other_complete_path/file.zip"]); 这是从README文件直接,当我运行的应用程序没有任何反应。 甚至不是一个错误。 我曾尝试在模拟器和运行4.0.3的三星S2使用各种版本 Phonegap版本2.7 任何人都可以指向正确的方向吗? 谢谢