【发布时间】:2019-12-26 00:03:14
【问题描述】:
使用 JQuery Append 我想用 HTML 填充一个 div,对于页面上同一类的所有实例都是相同的。
HTML
Text
<div class="custom-content"></div>
Text
<div class="custom-content"></div>
Text
<div class="custom-content"></div>
Text
JQuery:
<script>
if ($(window).width() < 500) {
$(".custom-content").append("<script>document.write('Small');<\/script>");
} else {
$(".custom-content").append("<script>document.write('Large');<\/script>");
}
</script>
我希望“大”或“小”会出现在所有 3 个 div 上,如下所示:
预期输出:
Text
<div class="custom-content">Large</div>
Text
<div class="custom-content">Large</div>
Text
<div class="custom-content">Large</div>
Text
只有当我将脚本复制 3 次时,它才会按照我的预期进行,这是一个糟糕的解决方案。
演示: https://codepen.io/MichaelROS/pen/QWwgXEB
我能做什么?请不要建议使用与 Append 不同的函数。
注意:代码很长,它不仅仅写了 1 个单词,我这样做是为了说明这个示例中已经存在的问题。
【问题讨论】:
-
似乎无法复制这个问题 - Codepen.io to demonstrate
-
对不起,我将代码简化太多以简化问题,它解决了问题。我现在包含了一个不太简化的版本。你能回头看吗?问题可能与转义脚本结束标记有关?笔记。附加的脚本要长得多,它不只是说一个字。
-
尝试使用
.each()示例$('.custom-content').each(function(){ $(this).append('Content Here to Append'); }); -
@YashKaranke 它将它添加到最后一个 DIV 的 3 次,请参阅 codepen.io/MichaelROS/pen/zYxzJbR