草庐IT

$​​Safari​​

全部标签

javascript - date() 函数在 Safari 和 Firefox 中返回无效日期

我按以下方式格式化日期:date=newDate("2013-05-1220:00:00");formattedDate=newDate(date.getFullYear(),date.getMonth(),date.getDate());当我在Chrome中运行它时,它输出:SunMay12201300:00:00GMT-0700(PDT)这是我需要的,但是当我在Firefox或Safari中运行它时,我得到了InvalidDate任何人都可以为此提出解决方法。如果不需要库、正则表达式或字符串操作,则加分。 最佳答案 虽然值201

javascript - webkit (Safari/Chrome) 中的选择范围

我正在使用内容可编辑的iframe在javascript中创建语法高亮器,最重要的事情之一是能够正确缩进代码。以下代码在Firefox中运行正常://Createoneindentcharactervarrange=window.getSelection().getRangeAt(0);varnewTextNode=document.createTextNode(Language.tabChar);range.insertNode(newTextNode);range.setStartAfter(newTextNode);它创建一个制表符并将光标移动到该字符的右侧。在Chrome和Sa

javascript - 在 Safari 中使用 jQuery 检测页面缩放变化

我在包含position:fixed元素的Web应用程序中遇到Safari问题。当页面缩小(缩小100%)时,事情就会中断,需要通过调用函数来修复。所以我想检测用户的缩放。我不久前发现了这个jQueryPlug-in:http://mlntn.com/2008/12/11/javascript-jquery-zoom-event-plugin/http://mlntn.com/demos/jquery-zoom/它检测可能导致页面缩放级别更改的键盘和鼠标事件。很公平。它适用于当前的FF和IE,但不适用于Safari。有什么想法可以在当前的WebKit浏览器中做类似的事情吗?

javascript - 在 Safari 中使用 Javascript 的 new Date()

我在使用Javascript中的新Date()函数时遇到问题。Safari给我一条“无效日期”消息。我在jsbin创建了一个简短示例.这似乎适用于所有其他浏览器,但不适用于Safari。关于如何从输入(例如2011-01-03)中获取值并将其转换为日期对象,同时使其在Safari中正常工作,有什么想法吗?非常感谢! 最佳答案 JavaScript上的日期解析行为依赖于实现,ISO8601格式最近被添加到ECMAScript第5版规范中,但尚未得到所有实现的支持。我建议您手动解析它,例如:functionparseDate(input

javascript - 在 Safari Web Inspector 中调试 Web Worker

Chrome的开发工具非常适合调试网络worker,因为我可以“浏览”到该JavaScript环境并设置断点。甚至控制台也按预期工作。在Safari上,情况完全不同。来自WebWorker的console.log甚至不在控制台中打印。我看到加载了工作脚本并在其上设置了一个断点,但它没有中断。我什至没有看到用importScripts加载的脚本。如何使用Safari的WebInspector来解决问题?我认为这不重要,但我使用的是Safari8。 最佳答案 在源代码中插入调试器;代码用法:将它插入任何你想添加断点的地方,当开发者控制台

javascript - getByteFrequencyData 不适用于 Safari 中的实时流

有关现场演示,请参阅:http://codepen.io/rrorg/pen/WxPjrz?editors=0010在Safari中播放HTTP音频直播流时,分析器的getByteFrequencyData会用零填充数组。在所有其他浏览器中,这按预期工作,Safari没有问题正确填充静态文件的频率数据。CORSheader设置正确,Appledocumentation没有提到特殊情况。 最佳答案 你不会喜欢这个:Safari不支持createMediaElementSource。来源:http://caniuse.com/#feat

javascript - 多个文件选择的 Safari 中的文件输入大小问题

我在WindowsVista上的Safari5.1中遇到多个文件上传不一致的问题(没有尝试过其他平台)。input元素具有multiple标志以允许选择多个文件。当用户确实选择了不止一个文件时,就会出现问题。在这种情况下,每个File都有一个size属性0。如果(仍然带有multiple标志),用户只选择一个文件,size属性正确包含文件大小。这个问题可以在下面的例子中看到。测试并查看单个文件选择和多个文件选择的输出。(您将需要在测试之间重置)。JsFiddleTest有人知道解决方法吗? 最佳答案 这是一个Safari错误。暂时没

javascript - getComputedStyle 报告 Chrome/Safari/Firefox 和 IE11 之间的不同高度

这让我一整天都有些发疯,我一直没能找到其他人在哪里记录了这种差异。window.getComputedStyle(el).height参见http://jsfiddle.net/ZwF9H/6/用于演示。我期望window.getComputedStyle()应该在所有浏览器之间返回相同的计算高度值。InternetExplorer11正在做一些不同的事情。(实际上,IE9和10也是如此,但IE11是我可以使用开发工具的第一个。)对于所有其他浏览器,计算的高度是在css中设置的高度,无论它是在样式表中还是在textarea元素上内联。IE11忽略了box-sizing:border-b

javascript - setTimeout 不适用于 safari 移动版

我有一个功能,点击它时会显示一个菜单,我希望它在5秒后消失。这是我的javascript-它在桌面浏览器上正常工作,但在移动浏览器上不会消失。$(function(){$('#prod_btn').click(function(){$(this).addClass('selected').next('ul').css('display','block');setTimeout(hideMenu,5000);});});functionhideMenu(){$('#prod_btn').removeClass('selected').next('ul').css('display','n

Javascript 触摸事件在 Mobile Safari 中不起作用

我试图限制用户在触摸iframe时滚动。所以,如果他们触摸body,他们可以滚动。想知道为什么下面的代码在MobileChrome中运行良好,但在MobileSafari中却无法运行。有什么办法可以为safari解决这个问题?.overflowHidden{position:relative;overflow-y:hidden;}.overflowAuto{-webkit-overflow-scrolling:touch;overflow:auto;}hellohellohellohellohellohellohellohellohellohellohellohellohellohel