问题标签 [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.
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 或类似的东西来做一些事情。
如果它有帮助,这里有一个我想要单元测试的函数类型的例子:
javascript - document.write XHTML 错误 » h1 不允许
因为我在我的网站上使用了 Cufon,但也想让它在禁用 JavaScript 的情况下看起来不错,所以我决定使用
这工作正常。但是,当我验证它时,我收到此错误:
文档类型在此处不允许元素“h1”
该怎么做才能解决这个问题?:(
jquery - jQuery 和 document.write
我有以下脚本:
当我将它放入页面时,它会重定向到我不想要的脚本。
我想在我插入上面代码的地方回显这个 javascript 文件,所以一旦页面有它就会加载。目前,当我使用上面的脚本时,它只显示 javascript 文件的内容,而不是整个页面。
我希望它把它放到我放置这个脚本的页面中。
我这样做是为了使其调用的脚本基本上在页面加载后就位,因为目前该脚本导致页面在加载时暂停。
谢谢你。
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 调试器:
javascript - 如何加载脚本,使其 document.write 进入隐藏元素进行操作?
我想加载一个执行 document.write(s) 以显示 HTML 内容的脚本。通常,如果只是将脚本嵌入到内容应该出现的地方,那就足够了,但在我的情况下不是这样。我需要使用 jQuery 进一步增强内容,所以我想了解:如何加载脚本,使其 document.write 进入隐藏元素进行操作?
让我提前说脚本对 document.write 的使用不受我控制......所以请不要以最佳实践回答;)
php - javascript 在 src 中调用 php 文件,正确的方法
我在我的 HTML 中包含以下 javascript 代码,它反过来引用 php 文件来执行后端工作:
我可以在不使用 document.write() 的情况下以任何其他方式从 javascript 函数内部调用 javascriptGetAd.php 吗?
javascript - 如何在 JS 脚本中加载多个 CSS 文件
下面我有一个嵌套的 if 语句,它根据用户设备加载某个 CSS 文件。我还有一个样式表切换器,如果正在使用某个设备,它需要加载 CSS 文件。
问题在于最后一行。我试图在加载页面时“加载”而不是写入多个 CSS 文件。我需要加载多个 CSS 文件,因为我有一个样式表切换器,它取决于基本上预加载的 CSS 文件。
我显然不能像上面的代码那样将 document.write 与多个 CSS 文件一起使用。无论如何,我也不应该使用 document.write,因为如果用户确实更改了样式表,那么在刷新时它无论如何都会写入一个较旧的 CSS 文件。
我已经尝试尽可能清晰,但我基本上在这里使用许多不同的设备,并且还允许用户有机会更改样式表。有风险,我知道!
无论如何我可以将document.write更改为document.load之类的东西吗?或者是否有可能根据用户设备加载多个样式表?
谢谢,约翰。
javascript - 如何创建在 document.write 中存活的 JS 事件侦听器?
我正在将事件侦听器附加到窗口对象。然后在脚本的后面,正在使用 document.write。(我知道,这是邪恶的。我在这件事上别无选择。)问题是,document.write 消灭了我的听众。有可能避免这种情况吗?
这是一个说明问题的小提琴:http: //jsfiddle.net/Fuhzu/
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 文档。
有谁能够帮助我?如果你需要我,我可以澄清...
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 中使用它。