【问题标题】:How to append a div using jquery如何使用jquery附加一个div
【发布时间】:2013-11-06 09:24:21
【问题描述】:

无论如何我可以通过从其他地方(例如从另一个页面或从正文中的某处)附加“div #B”来实现以下目标,而不是将其写入此脚本本身,并且不会像使用 JQuery 时遇到相同的来源策略问题加载?

$('#A').append("<div id='B'><span><img src='i1.png'></span></div>");

【问题讨论】:

    标签: javascript jquery html css jsonp


    【解决方案1】:

    您可以使用它在正文中附加元素的 HTML

    $('#A').append($('#someelement').html());
    

    由于同源策略,这不适用于跨源 iframe。但是你可以使用 AJAX 从另一个页面获取 HTML,只要 URL 是同源的。

    【讨论】:

    • downvote,如果 iFrame 在同一个域中 jquery 可以获取 iFrame HTML 如果您不知道该怎么做,请不要误导答案
    • @fareednamrouti 谢谢,我更新了答案来解决这个问题。
    【解决方案2】:

    很抱歉,如果你想附加一个 div,你必须能够指定它的内容和样式。

    如果您想从页面上的 div 中提取它,请执行以下操作:

    var loadAble = $('#YourDivName').html();
    $('#A').append("<div class="B"></div>");
    $('#A .B').html(loadAble);
    

    记得分别替换YourDivName!

    我知道你说过不要使用 .load(),但还是这样:

    $('#A').append("<div class="B"></div>");
    $('#A .B').load("yourFileGoesHere.html#YourDivName");
    

    另一种选择(未经测试)是这样写的:

    var B = $('#A').append("<div class="B"></div>");
    B.load("yourFileGoesHere.html#YourDivName");
    

    【讨论】:

      猜你喜欢
      • 2011-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-14
      • 2017-10-16
      • 2011-09-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多