Meteor.js:<script>标记在<body>内不起作用

身体标记内的简单脚本标记看起来不起作用。 警报不会在下面的代码中触发:

<body>
   <script type="text/javascript">
      alert('Hello');
   </script>

      {{>main}}

</body>

任何想法为什么?

编辑:刚刚尝试一个新的流星应用程序,仍然没有警报标签:

<head>
  <title>test</title>
</head>

<body>

  <script type="text/javascript">
     alert('Hello');
  </script>

  {{> hello}}
</body>

<template name="hello">
  <h1>Hello World!</h1>
  {{greeting}}
  <input type="button" value="Click" />
</template>

奇怪的是,当我复制粘贴html的源代码时,创建了一个新的html页面,并且警报将起作用。

Edit3:我在这里部署这个应用程序:http://alert-in-body-test.meteor.com/你有一个警告框?


这个问题在当前版本的Meteor(0.5.4版本)中仍然相关,所以我想描述如何在脚本的最后加入脚本。

要在正文结尾处执行javascript,请注册一个Handlebars助手,并在其中放置相关代码,如下所示:

在client.html中:

<body>
  {{renderPage}}

  {{afterBody}}
</body>

...

在client.js中:

if (typeof Handlebars !== 'undefined') {
  Handlebars.registerHelper('afterBody', function(name, options) {
    $('body').append('AFTER BODY');
  });
}

(关于为什么这是必需的一个很好的描述,请参阅Rahul在这里回答类似的问题:https://stackoverflow.com/a/14002991/219238)


它为我工作

在onrender调用这个jQuery

$ .getScript('你的网址')


它应该工作。

我刚刚在我的一个项目中粘贴了它,并且它工作正常。

你的{{> main}}对我来说很难过。 还要确保<body><html>标签内。

链接地址: http://www.djcxy.com/p/63081.html

上一篇: Meteor.js: <script> tag doesn't work inside <body>

下一篇: R Sweave output error