Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript document.write与CoffeeScript_Javascript_Html_Coffeescript_Document.write - Fatal编程技术网

Javascript document.write与CoffeeScript

Javascript document.write与CoffeeScript,javascript,html,coffeescript,document.write,Javascript,Html,Coffeescript,Document.write,我知道我可能做错了,因为如果尝试通过它工作,但令人惊讶的是,它不会在我的示例中产生任何结果: <!--http://f.cl.ly/items/1u3Q3W101U2T18162v0V/test.html--> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Page Title</title> <scr

我知道我可能做错了,因为如果尝试通过它工作,但令人惊讶的是,它不会在我的示例中产生任何结果:

<!--http://f.cl.ly/items/1u3Q3W101U2T18162v0V/test.html-->
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Page Title</title>
  <script src="http://jashkenas.github.com/coffee-script/extras/coffee-script.js"></script>
</head>
<body>
  <script type="text/coffeescript" >
    document.write "<h2>TEST</h2>"
  </script>
</body>
</html>
但在咖啡脚本中

loaded = ->
   alert "hello"

document.addEventListener "DOMContentLoaded", loaded
与javascript版本相比,似乎没有触发事件方法

有人能帮我弄清楚发生了什么事吗

谢谢


使现代化 如果在加载页面后运行控制台,我可以使以下各项正常工作:

CoffeeScript.eval('document.write "<h1>testing</h1>"')
CoffeeScript.eval('document.write“testing”'))
但是仍然想知道为什么页面本身不会自动显示

适用于Firefox和Chrome,但不适用于Safari
如果使用Safari
5.0.3

我对CoffeeScript一无所知,但是不要使用文档。写。这是邪恶的:

改用createElement和appendChild/insertBefore:

var p = document.createElement("p");
p.innerHTML = "Lolz";
document.body.appendChild(p);

myDiv = document.getElementById("aDiv");
document.body.insertBefore(p, myDiv);

document.write在Safari中也有问题。

我对CoffeeScript一无所知,但不要使用document.write。这是邪恶的:

改用createElement和appendChild/insertBefore:

var p = document.createElement("p");
p.innerHTML = "Lolz";
document.body.appendChild(p);

myDiv = document.getElementById("aDiv");
document.body.insertBefore(p, myDiv);

document.write在Safari中也有问题。

这是一个humdinger,但经过调查,我得到了你的答案:

coffeescript.js
的工作方式是,它在加载文档后查找并运行带有
type=“text/coffeescript”
的脚本。就Safari而言,这意味着

<script type="text/coffeescript">
  document.write "<h2>TEST</h2>"
</script>

文档。编写“测试”
相当于

<script type="text/javascript">
  window.addEventListener('DOMContentLoaded', function() {
    document.write("<h2>TEST</h2>");
  }, false);
</script>

addEventListener('DOMContentLoaded',function(){
文件。编写(“测试”);
},假);
但它却悄无声息地失败了。请注意,使用Erlend描述的
document.createElement
方法或类似jQuery的库进行插入可以正常工作


因为这在Chrome中是有效的,所以我把它称为Safari bug。但这个故事的真正寓意是:不要使用文档。写。这是一个很无聊的故事,但经过调查,我得到了你的答案:

coffeescript.js
的工作方式是,它在加载文档后查找并运行带有
type=“text/coffeescript”
的脚本。就Safari而言,这意味着

<script type="text/coffeescript">
  document.write "<h2>TEST</h2>"
</script>

文档。编写“测试”
相当于

<script type="text/javascript">
  window.addEventListener('DOMContentLoaded', function() {
    document.write("<h2>TEST</h2>");
  }, false);
</script>

addEventListener('DOMContentLoaded',function(){
文件。编写(“测试”);
},假);
但它却悄无声息地失败了。请注意,使用Erlend描述的
document.createElement
方法或类似jQuery的库进行插入可以正常工作


因为这在Chrome中是有效的,所以我把它称为Safari bug。但是这个故事的真正寓意是:不要使用文档。写。

很抱歉我的假答案,@ludicco-我想我今天有点慢:-)@kjy112真的吗?这很奇怪……我真的很困惑:/哇,这很奇怪,我刚刚把上面的代码上传到云上,它正在运行,所以我想你们也应该可以运行,对吧?你能确认一下这个URL是否也会在屏幕上显示测试标题吗?谢谢大家,我刚刚注意到它在Firefox上有效,但在Safari
5.0.3
中不起作用。对于mesorry,我的假答案是@ludicco-我想我今天有点慢:-)@kjy112真的吗?这很奇怪……我真的很困惑:/哇,这很奇怪,我刚刚把上面的代码上传到云上,它正在运行,所以我想你们也应该可以运行,对吧?你能确认一下这个URL是否也会在屏幕上显示测试标题吗?谢谢大家,我刚刚注意到它在Firefox上有效,但在Safari
5.0.3
for meTrevor中无效。非常感谢你的解释,很高兴知道那里发生了什么。)特雷弗非常感谢你的解释,很高兴知道那里发生了什么事