问题标签 [browser-bugs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
385 浏览

javascript - 我可以使用哪些方法来重现零星的 IE“此页面上的脚本导致 Internet Explorer 运行缓慢”通知?

我正在尝试复制客户端报告的错误,它是 IE 中出现的“此脚本运行缓慢”通知,因为它的 JS/DOM 解析速度极慢。

这不会发生在我的 virtualbox IE6(客户端有 IE6)上,也不会在我有的测试机器(一些 mac mini)上工作。

我可以保证有很多 JS 发生,并且在使用 XHR 检索后有很多 HTML 正在处理,此外还有很多 JS 在之后对附加的 DOM 元素进行操作。我不可能发布整个脚本,但我相信我可以轻松追踪问题,但我想重现它以优化它。

这是一个非常知名的客户,所以我不能只是通过电话或即时消息与他们交谈。有什么方法可以减慢机器速度以重现此错误?还是我应该坚持询问客户的计算机规格并尝试访问更可能重现问题的旧计算机?甚至使用browsercam之类的东西?

我想到的另一个想法是让 JS 运行得更多,以便我确实遇到问题并尝试优化我的代码,这样即使使用我的附加代码它也不会发布脚本通知错误。

我会很感激任何建议。

0 投票
3 回答
7820 浏览

javascript - 为什么 IE 核对 window.ABC 变量?

运行以下代码块时,FF 和 Chrome 输出typeof(hiya) = string,而 IE7/8 输出typeof(hiya) = undefined

以下每一项都会使问题消失:

  • 将所有内容组合成一个<script>块。
  • 删除if块。
  • 重命名var hiya = 1var hiya2 = 1.
  • 重命名var hiya = 1window.hiya = 1.
  • 重命名var hiya = 1hiya = 1.

怎么了?IE 中是否存在范围界定错误?

0 投票
1 回答
1426 浏览

html - IE7 显示错误,不应存在的 Magic Padding/Margin

前言:对不起,如果这个问题应该发布在姐妹网站上。现在有这么多,很难说什么仍然属于 SO 的管辖范围。

问题:我遇到了连续<div>元素的问题。有时它们之间有一个神奇的填充/边距,我不知道为什么。

IE7 魔法填充错误 http://img689.imageshack.us/img689/6239/ie7bug.png

如您所见,我的容器的标题 div 和正文 div 之间有一个空格。让我解释一下我的 DOM/CSS 是如何设置的:

HTML

一个简单的容器/子 div 设置,没什么特别的。

CSS

顶盖:

身体:

如您所见,CSS 也非常简单,没有什么特别花哨的。在 body 内部是另一个<div>遵循与此 div 相同原理的项目(容器 div,堆叠子项)。不会像这样表现出奇怪的填充。

我已经使用 IE9 中的开发人员工具(启用了 IE7 标准)来检查 DOM 并查看可能导致这种情况的原因(例如从顶部向上推的边距或其他东西)

正如你在这里看到的:

正文突出显示 http://img844.imageshack.us/img844/3448/ie7bug01.png 顶部突出显示 http://img192.imageshack.us/img192/46/ie7bug02.png

div 的边界是完整且正确的。

结论这是一个非常奇怪的错误,我在我早期的设计中看到它,但也无法解决。到目前为止,这确实是我在这个项目中遇到的唯一 IE7 迁移问题。据我所知,我非常接近 HTML 标准(我知道 IE 在某些情况下倾向于不尊重它们,但计划是尽可能正确地做到这一点)。

给你的问题:

  • 我应该寻找什么可能导致这种情况?
  • 难道我做错了什么?如果是这样,我该如何解决?
  • 有没有更简单/更好的方法来解决这个问题?
  • 我有什么明显的遗漏吗?

如果您需要澄清或更多信息,请随时将它们留在评论中,我会在看到它们时回复它们。(在星期五发布这个有点晚:o)。

0 投票
5 回答
5539 浏览

html - 为什么网站以 IE 怪癖模式运行?

我有一个站点:http ://www.sucramma.dk 当我在 FF、Chrome 或 Safari 中时,该站点按应有的方式显示,但在 IE 中该站点是左对齐的,并且正在运行是怪癖模式。为什么?文档类型已设置!

0 投票
1 回答
549 浏览

html - Opera浏览器渲染bug:垂直溢出和绝对定位。有人知道解决方法吗?

我正在尝试解决 Opera 中看起来像错误的问题。

不良行为是 Opera 在浏览器窗口上放置了一个不必要的垂直滚动条。

当我有一个外部 div 是 position:relative 并且有 overflow-y:auto 和一个嵌套的内部 div 是 position:absolute 并且恰好高于浏览器窗口的高度时,就会发生这种情况。

例如:

这是一个演示:

http://www.jaysweeney.com.au/overflow_issue.html

有趣的是,从上面的demo可以看出,水平溢出不会出现这个问题。

这是我在 Opera 中看到的屏幕截图:

http://www.jaysweeney.com.au/screen.png

我在 OS X 上使用 Opera 11.01。

如果有人知道此问题的解决方法,请告诉我。目前我很困惑,要改变我的标记和 javascript 以不使用绝对定位需要做太多的工作。

提前致谢,

杰。

0 投票
0 回答
252 浏览

javascript - 浏览器自动从 JS 源中查找图片 URL

我不确定有更好的方法来描述我的问题。我将以下 JS 代码重复了几次:

注意:这是生成的代码;这就解释了为什么会有一些不好的格式化做法(例如长行和大量文字)。出于多种原因,标记存储在全局变量中,无需继续“全局变量是邪恶的咒语”,谢谢。

那么,问题出在哪里?

运行该页面几次后,使用 2 个或更多上述代码,我开始注意到 Firebug 中出现很多 404 错误,其中之一是:

“网络错误:404 未找到 - http://www.MYWEBSITE.com/user/holiday-planner/%5C%22http:%5C/%5C/www.MYWEBSITE.com%5C/wp-content%5C/uploads% 5C/2011%5C/04%5C/赫勒斯庞"

以下是一些需要注意的关键点:

  • 该图像未在其他任何地方引用。
  • 包含图像的 HTML 可以完美运行(调用时)。
  • 404错误中的图片URL是错误的。它相对于用户所在的当前页面 ( http://www.MYSITE.com/user/holiday-planner/5-marsascala-zejtun-marsaxlokk-birzebbugia)。
  • 从 javascript 部分看来,代码已正确编码,并且我没有收到任何 JS 错误。
  • 我尝试使用 CDATA,但无济于事。再说一次,这更好,因为我不喜欢 CDATA 废话。
  • 我正在 Firefox 3.6 上对此进行测试。几分钟后将在其他人身上尝试一下……Chrome 和 Safari 似乎对这个问题免疫。
0 投票
2 回答
14315 浏览

html - 泰语换行:如何有效地打破泰语文本

0 投票
2 回答
2330 浏览

css - 为什么在IE9上刷新后缺少css?

我遇到了仅在浏览器模式下发生的问题:IE9。

如果我将浏览器模式切换到任何其他浏览器,它工作正常。

这就是发生的事情:当我到达页面时,CSS 就在那里,一切看起来都很好。但是,如果我刷新 CSS 就会消失并且我失去了我的样式。如果我点击到我网站上的其他任何地方,那么 CSS 仍然存在。这只发生在我在本地托管的网站上。

0 投票
3 回答
4011 浏览

regex - 我应该在 html5 输入正则表达式模式验证中使用 ^ 和 $ 吗?

我看到的大多数示例都没有 ^(抑扬符)和 $(货币或美元)字符来标记匹配字符串的开头和结尾。但是,我在 html5 规范中没有找到任何关于此的内容。它们是否隐含在模式中?html5 规范声明它们是隐式的。

编译后的模式正则表达式在与字符串匹配时,必须将其开头锚定到字符串的开头,并将其结尾锚定到字符串的结尾。这意味着用于该属性的正则表达式语言与 JavaScript 中使用的相同,除了模式属性与整个值匹配,而不仅仅是任何子集(有点好像它在开头暗示了一个 ^(?:模式和最后的 )$)。

在 type="text" 输入中,该模式使用任何一种格式都可以正常工作,但是在 type="tel" 输入中,我必须删除字符才能使正则表达式按预期工作。我已经在 Opera 和 Firefox 中进行了测试。

这是浏览器错误吗?我应该在 bugzilla 等中提交错误吗?


编辑:似乎我偶然发现了一个奇怪的错误,因为我无法创建简化的测试用例。页面中的简单输入不会显示上述行为。然而,问题仍然存在。我应该,还是不应该使用该死的 ^ 和 $ 锚?

0 投票
2 回答
3197 浏览

javascript - 浏览器如何处理同名的多个函数声明?

浏览器如何处理同名的多个函数声明?

具体测试用例如下 - 注意:我知道允许服务器脚本创建多个具有相同名称的函数声明是没有意义的,但我很好奇,所以请在回答之前意识到这一点。这纯粹是为了行为研究。

我们的 CMS 创建了单个“小部件”的多个实例,该“小部件”由

和一个

当服务器渲染一个页面上有这个小部件的多个实例时,浏览器如何决定使用哪个 javascript 函数?是否有任何浏览器实际上为每个浏览器创建单独的对象(函数)?

谢谢,j