标签: safari

Safari 上的 JavaScript 错误

我在桌面 safari 上使用 javascript 时遇到一些问题,但在移动设备上工作正常。

当我尝试运行时:

return Math.trunc(num * Math.pow(10, 2)) / Math.pow(10, 2);
Run Code Online (Sandbox Code Playgroud)

我正在控制台上:

TypeError: 'undefined' is not a function (evaluating 'Math.trunc(num * Math.pow(10, 2))')
Run Code Online (Sandbox Code Playgroud)

知道为什么会这样吗?在其他浏览器上工作正常,我不知道为什么(我从未使用过 safari)。

javascript math safari jquery

0
推荐指数
1
解决办法
580
查看次数

CSS 动画旋转3d 在 Safari 中不起作用

无论我如何尝试,我都无法让该动画在 Safari 12 中正常工作。我已经尝试过供应商前缀等,但没有任何效果。

它在 Chrome 中运行良好。有人有主意吗?

<div class="spinners"></div>
Run Code Online (Sandbox Code Playgroud)

这是CSS:

@keyframes spinx {
  0% {
    transform: rotate3d(0, 1, 1, 360deg);
  }
  100% {
    transform: rotate3d(0, 0, 0, 360deg);
  }
}
.spinners {
  display: block;
  width: 100%;
  height: 4rem;
  overflow: hidden;
  position: relative;
}
.spinners:before, .spinners:after {
  content: "";
  width: 4rem;
  height: 4rem;
  border: 3px solid red;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -2rem 0 0 -2rem;
  display: block;
  transform-origin: 50% 50% 0;
}
.spinners:before {
  animation: spinx …
Run Code Online (Sandbox Code Playgroud)

html css safari css-transforms css-animations

0
推荐指数
1
解决办法
2135
查看次数

PHP 会话变量在 MacOS Mojave 上的 Firefox 63.0、Safari 12.0 和 iOS 12.0.1 上的 Safari 中丢失

Mac 和 Windows 上最新的 Firefox 63.0 版本以某种方式破坏了我为电子商务网站的管理后端构建的登录。这以前工作得很好。我使用 PHP。

使用有效凭据成功登录后,$_SESSION['admin_logged_in']变量将被设置为TRUE,并且我已正确登录并重定向到起始页面。然而,当我尝试导航到管理站点中的任何其他页面时,我会立即注销,就好像会话变量突然丢失一样。

在最开始的每个页面(包括起始页面)上,我都包含一个简短的登录检查脚本,如下所示:

<?php
//start session
session_start() ;
//check user is logged in
if (($_SESSION['admin_logged_in'] !== TRUE) || (!isset($_SESSION['admin_logged_in']))) {
    header("location: /index.php") ;
    $_SESSION['admin_reason'] = "illegal" ;
    exit;
    }
?>
Run Code Online (Sandbox Code Playgroud)

我可能认为这是 Firefox 的一个错误,但最近我也被 iOS 12 和 MacOS Mojave 上最新版本的 Safari 注销了,通常是在浏览几个页面后。

目前在 Opera 或 Chrome 上工作且没有问题(在 Mac 上测试)。

我尝试过清除 Firefox 中的缓存并调整隐私设置,但没有成功。我已经与我的网络主机交谈过,他们不知道任何服务器端问题或更改。

但是,如果 PHP 代码和会话变量存在问题,因为这是在服务器端处理的,那么它可能无法在任何浏览器上运行,并且以前也无法运行?

感谢您的任何建议。


我设法解决了这个问题,请参阅下面的答案。

php safari favicon firefox session-variables

0
推荐指数
1
解决办法
2372
查看次数

使用 .play() 在 Safari 中播放音频

我希望使用自定义控件来播放音频文件,以触发自定义按钮上的 .play() 方法。需要明确的是,我并不是想让音频自动播放。在 Chrome 中一切正常,但在 Safari 中出现错误:

未处理的承诺拒绝:NotAllowedError:当前上下文中的用户代理或平台不允许该请求,可能是因为用户拒绝了权限。

该项目是使用 React 和 React Router 构建的,所以我想知道它是否可以在我的 useEffect() 挂钩中修复。我尝试过启用音频元素上的控件并使用 CSS 将它们从 DOM 中删除,但没有成功。

import React, { useState, useRef, useEffect } from "react";
import { BrowserRouter as Router, Switch, Route } from "react-router-dom";
import { gsap } from "gsap";

function RadioPlayerNav(props) {
    const audioEl = useRef(null);
    const [isPlaying, setIsPlaying] = useState(false);

    const playingTitle = document.querySelector(".radio-player-nav .title p");

    const toPX = (value) => {
        return (parseFloat(value) / 100) * (/vh/gi.test(value) ? window.innerHeight : window.innerWidth);
    }; …
Run Code Online (Sandbox Code Playgroud)

html javascript safari audio reactjs

0
推荐指数
1
解决办法
1654
查看次数

如何在 Javascript 中检测 IOS15 上的 iPad/iPhone

在 IOS 中,我现在有以下 UserAgent:

“Mozilla/5.0(Macintosh;Intel Mac OS X 10_15_6)AppleWebKit/605.1.15(KHTML,如 Gecko)版本/15.2 Safari/605.1.15”

在我的 PC 上的 Safari 上,我有以下内容:

“Mozilla/5.0(Macintosh;Intel Mac OS X 10_15_7)AppleWebKit/605.1.15(KHTML,如 Gecko)版本/15.1 Safari/605.1.15”

但我需要检测我的脚本是否在 iPad 或 iPhone 上运行,因为我需要安装 MobileDragDrop Polyfill ( https://github.com/timruffles/mobile-drag-drop )

StackOverflow 上关于此问题的所有答案均在 IOS 15 之前,导航器属性是否仍包含“iPad”或“iPhone”

javascript iphone safari ipad ios

0
推荐指数
1
解决办法
1704
查看次数

Safari 浏览器中lookbehind 正则表达式的替代品是什么?

safari浏览器中lookbehind正则表达式的替代品是什么?

\n

我正在使用一个正则表达式来排除 http

\n

这是我的正则表达式:

\n

\xc2\xa0

\n
value: /^((\\w+)(?<!http):\\/\\/).+$/,\n
Run Code Online (Sandbox Code Playgroud)\n

这在 chrome 中工作正常,但在 safari 中失败。到处看看这个。

\n

javascript regex safari reactjs

0
推荐指数
1
解决办法
54
查看次数

如何在浏览器上关闭自动完成功能

这已经困扰了我一段时间,我想知道如何在代码中防止它.我正在使用safari测试我的代码,我有很多表单,当我输入以相同字母开头的东西时,safari会把这个愚蠢的酒吧放进去.我想知道是否可以预防.

在此输入图像描述

谢谢您的帮助!

html javascript php forms safari

-2
推荐指数
1
解决办法
772
查看次数

如何从我的应用程序中的UIWebView打开外部链接,但在Safari中?迅速

我想打开我的应用程序中的所有外部链接(UIWebView)不在应用程序内部,而是在Safari中.我怎样才能做到这一点?我已经实现了UiWebViewDelegate.

我的问题的工作解决方案如下:

func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {
if navigationType == UIWebViewNavigationType.LinkClicked{
    UIApplication.sharedApplication().openURL(request.URL!)
    return false
}
    return true
}
Run Code Online (Sandbox Code Playgroud)

safari uiwebview ios swift

-2
推荐指数
1
解决办法
3746
查看次数