2012-03-02 67 views
0

如何在yui3中延迟加载html模板?综观例子,用于加载模板的首选方式似乎是将它们嵌入在脚本元素在HTML,就像这个例子:如何在yui3中延迟加载html模板?

http://yuilibrary.com/yui/docs/app/app-todo.html

我试图把我的模板在自己的HTML文件,然后用Get类缓存加载它,但是这实际上将内容加载为脚本,这显然不起作用。

那么,IO Utility是否应该走?这似乎是一个复杂的方式来做一些简单的事情,比如加载一大块html。如果这是最好的办法,任何人都可以提供一个简单的例子吗?

回答

0

尝试node.load(urlToFetchTemplate);服务器在里面返回带有ID和模板标记的<脚本>标记。

+0

我可以通过将模板加载到隐藏的div中来完成这项工作。但是,我希望找到一种方法将其直接加载到变量中。我有一些或多或少与Y.io合作,但我希望这是一个普遍的问题,并会有一个广泛接受的标准方式来做到这一点。 – JesterVineo 2012-03-02 21:23:19

0

我正在尝试为此探索YUI.io。但现在,我想出了一个解决方法(丑陋的解决方案)是用javascript方法包装整个模板内容。当它被YUI3加载程序下载为javacript时,该文件将在浏览器中执行。

Template File : mypopup.js 

writeTemplate(' <-- my whole template content goes here with js escaped-->'); 

== and here is the function to write the template to hidden placeholder on the page === 

window.writeTemplate = function(txt) { 
    document.getElementById('templateHolder').innerHTML = txt; 
} 

请更新此线程,如果你找到一个更干净的方式做到这一点。