为什么我的JavaScript不能在Wordpress管理中工作



我正在开发一个Wordpress插件。我有几个JavaScript文件(还有几个CSS和PHP类(。使用浏览器开发人员的工具,我调试并优化了脚本。所有这些都可以在各种浏览器中完美工作(如Firefox、Chrome和Safari(。

然而,这些脚本将无法在我的旧iPad(iOS 9.3(上运行,它使用原生Safari。

更新:iOS上也没有Chrome的javascript。

我现在有一个简单的脚本:

alert("Hello");

它在我的桌面浏览器上再次显示良好。

(我听说Safari限制网站使用http:。不过我的网站使用https:。(

我安装了另一个插件("WP Tools",我想(,在WP管理中,它在桌面上报告:;Javascript正在工作&";。iPad上写着";Javascript工作不正常&";。其他非WP测试人员在iPad上显示,js是活跃的并且正在工作。

在一个全新的Wordpress上测试了"二十一"主题-没有其他插件。其他人能证实这些结果吗?有工作机会吗?

我本想添加一条评论,但还没有足够的声誉:(

手机浏览器可能不支持相同的功能、版本等,而且如果设备太旧,苹果也不总是允许应用程序更新。这意味着一些应用程序可能对iOS版本有限制。如果是,您应该检查它是否适用于较新的设备。

我最近听说ES6中的一些功能在移动浏览器中根本不起作用,而且一些浏览器中也禁用了警报、确认等弹出窗口。我自己还没有检查过,所以我不能真正确认或否认它。

我首先要检查您的移动浏览器是否支持其他网站的脚本。如果是这样,如果可能的话,我会继续确保脚本遵循ES5语法。

如果这不起作用,你可以删除所有的脚本代码,然后一点一点地添加回来,找出哪里出了问题。另一个方便的";技巧";在WordPress中调试时,是将版本号设置为fx。time(),用于注册/排队脚本。通过这种方式,您可以确保浏览器不会从自己的缓存中提供旧版本的脚本。

希望它能帮上一点忙,你最终会明白

最快、最明智的解决方案是强制web应用程序用户更新浏览器版本,以便享受网站的所有功能。这是因为浏览器如何解释您的脚本。这与你写的脚本无关,而是你的脚本是如何编译或解释的。较旧的浏览器版本在构建浏览器时针对的是最近的JS引擎,这一直是传统。因此,这意味着随着时间的推移,您编写的同一代码在JS引擎的较新版本中的编译或解释会有所不同。

您可能拥有的唯一其他选择是构建或查找库,使您的代码与旧浏览器向后兼容。这意味着在您想要的浏览器版本发布时,您已经对JS引擎有了很好的了解。

最新更新