小编atw*_*tor的帖子

IE7和IE8随机无法加载外部脚本

<link>一旦DOM准备好,我就会动态地向头部添加元素.但是,我在IE8和IE7中得到了不一致的结果(所有其他浏览器都很好).

每次加载(缓存或未缓存)页面时,IE 7/8都会在样式表中删除一些CSS规则.我的动态样式表中的1或2个不会加载.它总是与IE倾向于忽略的1或2个样式表相同 - 即使开发人员工具栏将它们显示为添加到头部!.

样式表本身<link>在最终DOM中显示为元素,但是它们的一些规则应用(尽管每次重新加载它们都没有任何问题).

在我的位置,我没有从<head>(CMS限制)编写代码的奢侈- 我只能从身体动态插入,这可能是问题.

更新:这是我正在使用的代码(位于其中<body>)以插入样式表:

document.observe('dom:loaded', function() { // Using Prototype.js

// Add stylesheets
// addStylesheet('cite.css', 'head'); // Contains no webfont/@font-face rules
// addStylesheet('type.css', 'head'); // Contains webfont family name references*
// addStylesheet('flex.css', 'head'); // Responsive rules with @media queries
// addStylesheet('anm8.css', 'head'); // Some minor positional CSS for home page
// addStylesheet('gothic-cite.css', 'head'); // *Contains @font-face config
// addStylesheet('stag-cite.css', 'head'); // *Contains @font-face …
Run Code Online (Sandbox Code Playgroud)

javascript css dom internet-explorer-8 internet-explorer-7

7
推荐指数
1
解决办法
3216
查看次数

替换 Internet Explorer 中的 document.documentElement.innerHTML

以下在所有其他浏览器中都可以完美运行(据我所知):

document.documentElement.innerHTML = "<head></head><body>Testing</body>";
Run Code Online (Sandbox Code Playgroud)

但是在 IE 中卡住了(我测试了 IE9),出现控制台错误:

SCRIPT600: Invalid target element for this operation. 
Run Code Online (Sandbox Code Playgroud)

...引用上面代码行的第一个字符。

为什么这不能在 IE 中工作,但可以在所有其他浏览器中工作?我在某处读到了innerHTML替换“TBODY”元素有问题的地方,但我在删除所有 TBODY 子项后测试了这行代码,并发生了同样的错误。

我知道这听起来像是坏消息代码,但它是我们被迫使用的非常有限且简单的 CMS 网站的唯一选择。我只感谢 CMS 允许执行脚本。

本质上,我需要能够完全消化 HTML 内容并使用我自己的内容。同样,这在其他浏览器上运行良好。

其他注意事项:

  • CMS 正在使用该prototype.js库(在我运行此代码之前它已经加载了)
  • 文档类型是: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  • CMS 脚本用于在页面加载时prototype.js动态添加两个div完整的内容

javascript internet-explorer innerhtml

5
推荐指数
1
解决办法
6186
查看次数

Youtube oembed:它如何计算'宽度'和'高度'值?

当我在我的PHP代码中使用oembed URL $video->width$video->height从我上传的视频中提取时,我得到的值与我看到的与Youtube视频相关的任何内容都不匹配.

  • http://youtu.be/p7ftPYU2_0w

  • 上传到Youtube的原始视频尺寸:640 x 336

  • oembed返回:480 x 270

  • 从Youtube页面UI分享时最小的嵌入选项:560 x 316

有谁知道oembed在哪里获得这些价值?为什么默认为480?有没有办法获得真正的视频尺寸,或者最低限度突破640 x [proportional_height]

我的目标是在嵌入我的网站时保留视频的原生尺寸(无缩放),用户实际上无需再次键入视频尺寸.

php youtube dimensions oembed

5
推荐指数
1
解决办法
1226
查看次数