0

我必须text在 javascript 中使用负载作为templates. 它太糟糕了(我知道)。但是,当我通过 Ajax/PHP/JSON 获取结果时,它很优雅,但结果获取速度有点慢。我在弹出窗口中显示了这件事。所以我又回到了模板。我的问题是:“是否有任何工具可以自动将 HTML 代码解析为 javascript”。

示例:在HTML中,以下代码

<ul class="tabs">
    <li><a href="#" name="#tab1">Introduction</a></li>
    <li><a href="#" name="#tab2">Round</a></li>
    <li><a href="#" name="#tab3">Rules</a></li>
</ul>

在 javascript 中变为:

'<ul class="tabs">'+
    '<li><a href="#" name="#tab1">Introduction</a></li>'+
    '<li><a href="#" name="#tab2">Round</a></li>'+
    '<li><a href="#" name="#tab3">Rules</a></li>'+
'</ul>'+

还有其他方法吗?

4

3 回答 3

1

这是一个如何使用隐藏元素的示例。<code>Facebook 广泛地做到了这一点。

HTML:

<div>here is some normal content</div>
<code class="template" id="template1"> 
  <div>this is a template</div>
</code>

<div id="renderedTemplate"></div>

脚本:

var template = $("#template1").html();
var templateOutput = $("#renderedTemplate");

for( var i = 0; i < 10; i++ ){
    templateOutput.append(template);  
}

CSS:

.template {
  display: none;
}

但是,由于您不是 Facebook,因此请让您的生活更轻松,并按照@Shmiddty 的建议使用Handlebars之类的东西。它使用了类似的方法,但在组合中添加了强大的模板功能,而不是逐字插入字符串。

于 2013-01-14T18:20:39.797 回答
0
<button>Show it</button>
<p style="display: none">Hello 2</p>

$("button").click(function () {
    $("p").show("slow");
});

http://api.jquery.com/show/

于 2013-01-14T18:14:26.403 回答
0

将您的内容放在隐藏的 div 中并使用 jquery 的 .html() 方法加载它。

于 2013-01-14T18:09:50.500 回答