问题标签 [document.write]

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 投票
1 回答
275 浏览

javascript - 使用 QUnit 测试使用 document.write() 的实用程序函数:使文档对象成为其他文档?

我有一对document.write()用于改变 DOM 的实用程序函数,注入加载 JavaScript 和 CSS 的标签。

是否可以使用 QUnit 来测试注入是否正确发生而不会影响测试结果页面的实际 DOM?

我可以:

  • 覆盖document.write(),也许 insetup并重置它teardown,成为我定义的函数。但是他们我并没有测试document.write()他们应该做的事情。

  • 使用 js-test-driver 之类的东西让 JavaScript 从命令行运行(尽管我真的希望有可用的测试结果页面)。

  • 为这些实用程序测试创建一个单独的测试结果页面,以便这些结果不会以任何方式、形状或形式影响其他测试(尽管我真的想要一个统一的页面)。

  • 传递实用程序函数以加载空 JS 和 CSS 文件,这样它们实际上不会影响结果页面。

所以我有选择。

但我真正想要的是制作document一些文档,而不是实际的当前文档。我不确定这是可能的。(事实上​​,我什至不确定这是否有意义。)这可能吗?似乎我可以用 iframe 或类似的东西来做一些事情。

如果它有帮助,这里有一个我想要单元测试的函数类型的例子:

0 投票
2 回答
276 浏览

javascript - document.write XHTML 错误 » h1 不允许

因为我在我的网站上使用了 Cufon,但也想让它在禁用 JavaScript 的情况下看起来不错,所以我决定使用

这工作正常。但是,当我验证它时,我收到此错误:

文档类型在此处不允许元素“h1”

该怎么做才能解决这个问题?:(

0 投票
5 回答
19622 浏览

jquery - jQuery 和 document.write

我有以下脚本:

当我将它放入页面时,它会重定向到我不想要的脚本。

我想在我插入上面代码的地方回显这个 javascript 文件,所以一旦页面有它就会加载。目前,当我使用上面的脚本时,它只显示 javascript 文件的内容,而不是整个页面。

我希望它把它放到我放置这个脚本的页面中。

我这样做是为了使其调用的脚本基本上在页面加载后就位,因为目前该脚本导致页面在加载时暂停。

谢谢你。

0 投票
1 回答
574 浏览

javascript - SilverStripe 中的 TwitterWidget

我正在尝试将 TwitterWidget 集成到 SilverStripe 中。

这就是我要使用的插件: https ://twitter.com/about/resources/widgets/widget_profile

如果我将此代码放在一个简单的 *.html 文件中,小部件就可以工作。不幸的是,如果我尝试在 *.ss 文件中使用它,则会出现错误。

我下载了源代码以找出错误发生的位置。几个小时后,我发现了一些非常令人困惑的事情:

那是发生错误的代码:

document.write('<div class="twtr-widget" id="'+this.id+'"></div>')

萤火虫:

uncaught exception: [Exception... "An attempt was made to use an object that is not, or is no longer, usable" code: "11" nsresult: "0x8053000b (NS_ERROR_DOM_INVALID_STATE_ERR)" location: "http://www.domain.com/mysite/javascript/widget.js?m=1321187964 Line: 257"] LeftAn...8532904 (Zeile 883) function() {return new ActiveXObject('Microsoft.XMLHTTP')},

几次刷新后,有时 FireBug 会报告:

An attempt was made to use an object that is not, or is no longer, usable [Bei diesem Fehler anhalten] document.write('<div class="twtr-widget" id="'+this.id+'"></div>')

谷歌浏览器 JavaScript 调试器:

0 投票
2 回答
98 浏览

javascript - 如何加载脚本,使其 document.write 进入隐藏元素进行操作?

我想加载一个执行 document.write(s) 以显示 HTML 内容的脚本。通常,如果只是将脚本嵌入到内容应该出现的地方,那就足够了,但在我的情况下不是这样。我需要使用 jQuery 进一步增强内容,所以我想了解:如何加载脚本,使其 document.write 进入隐藏元素进行操作?

让我提前说脚本对 document.write 的使用不受我控制......所以请不要以最佳实践回答;)

0 投票
1 回答
251 浏览

php - javascript 在 src 中调用 php 文件,正确的方法

我在我的 HTML 中包含以下 javascript 代码,它反过来引用 php 文件来执行后端工作:

我可以在不使用 document.write() 的情况下以任何其他方式从 javascript 函数内部调用 javascriptGetAd.php 吗?

0 投票
3 回答
2875 浏览

javascript - 如何在 JS 脚本中加载多个 CSS 文件

下面我有一个嵌套的 if 语句,它根据用户设备加载某个 CSS 文件。我还有一个样式表切换器,如果正在使用某个设备,它需要加载 CSS 文件。

问题在于最后一行。我试图在加载页面时“加载”而不是写入多个 CSS 文件。我需要加载多个 CSS 文件,因为我有一个样式表切换器,它取决于基本上预加载的 CSS 文件。

我显然不能像上面的代码那样将 document.write 与多个 CSS 文件一起使用。无论如何,我也不应该使用 document.write,因为如果用户确实更改了样式表,那么在刷新时它无论如何都会写入一个较旧的 CSS 文件。

我已经尝试尽可能清晰,但我基本上在这里使用许多不同的设备,并且还允许用户有机会更改样式表。有风险,我知道!

无论如何我可以将document.write更改为document.load之类的东西吗?或者是否有可能根据用户设备加载多个样式表?

谢谢,约翰。

0 投票
4 回答
1810 浏览

javascript - 如何创建在 document.write 中存活的 JS 事件侦听器?

我正在将事件侦听器附加到窗口对象。然后在脚本的后面,正在使用 document.write。(我知道,这是邪恶的。我在这件事上别无选择。)问题是,document.write 消灭了我的听众。有可能避免这种情况吗?

这是一个说明问题的小提琴:http: //jsfiddle.net/Fuhzu/

0 投票
3 回答
2511 浏览

javascript - JavaScript 添加日期函数

我对核心 JavaScript 不太了解,只知道一点 jQuery。但我知道 jQuery 对于我在这里需要的东西不是必需的:

我想使用 getdate 函数来找出服务器的星期几。然后添加一堆子句,例如:

  • 如果是星期一,则将日期加 6 并以 MM/DD/YYYY 形式返回日期。
  • 如果是星期二,则在日期上加 5 并以 MM/DD/YYYY 形式返回日期。
  • 如果是星期三,则将日期加 4 并以 MM/DD/YYYY 形式返回日期。

以此类推,直到周日它会加 0。

所以假设今天是星期一,它将返回 2012 年 1 月 8 日 而在实际日期中,今天是星期日,所以它真的会返回 2012 年 1 月 1 日

然后我只想调用一个document.write函数将它返回的 MM/DD/YYYY 写入我的 HTML 文档。

有谁能够帮助我?如果你需要我,我可以澄清...

0 投票
2 回答
963 浏览

javascript - 获取 Javascript document.write 数据到变量并显示它

我有一个远程 Javascript,它允许我们使用一个函数输出数据,该函数通过document.write(thedata).

请参阅http://www.websnapr.com/implementations/。这里 :

函数在http://www.websnapr.com/js/websnapr.jsdocument.writed有数据。请参阅此 JS 文件的来源。

现在我想将此数据(无论写入什么)存储到一个变量中,然后将其分配给一些 Div innerHTML。

我尝试了一切,但它只是改变了我正在实施它的页面。我不想更改页面。它不应该打开新屏幕并写入它。它应该在同一页面上执行,因此我想将函数的 document.write 数据存储到一个变量中,并在任何 DIV 的 innerHTML 中使用它。