我需要在html标签上设置属性,或者在Meteor.js应用程序中设置文档的body标签。
具体来说,我想要<html dir="rtl">
或<body dir="rtl">
..
尝试后者,我收到控制台消息:
While building the application:
client/views/layout/layout.html:7: Attributes on <body> not supported
=> Your application has errors. Waiting for file change.
那你怎么做的?
答案 0 :(得分:19)
你必须在客户端Javascript的启动时注入它们:
Meteor.startup(function() {
$('html').attr('dir', 'rtl');
});
<强>更新强>
请注意,您现在可以为body标签设置内联属性,它们将以与body标签内容相同的方式连接Meteor:
<body data-atttribute="foobar"></body>
你可以有多个不同的身体标签,它们会合并在一起,所以上面只会为你现有的身体添加一个属性,而不是替换它。
据我所知,仍然需要通过Javascript设置HTML标记属性。
答案 1 :(得分:7)
可以使用startup
函数在WebApp.addHtmlAttributeHook
上设置HTML标记的属性。这是一个例子:
Meteor.startup(function() {
WebApp.addHtmlAttributeHook(function() {
return {
"dir": "rtl"
}
})
});
确保在服务器上调用此项,而不是客户端。