【问题标题】:How to load another domain content inside a div?如何在 div 中加载另一个域内容?
【发布时间】:2013-04-20 08:57:41
【问题描述】:

我有一个<div id="content">。我想将http://vietduc24h.com 中的内容加载到我的div

<html>
<head>
<script type="text/javascript">
    $(document).ready(function()
    {
        $("#content").attr("src","http://vietduc24h.com");
    })
</script>
</head>
<body>
    <div id="content"></div>
</body>
</html

我不想使用 iframe。我该怎么做?

【问题讨论】:

  • 请更改标题并展示您的努力

标签: javascript


【解决方案1】:

您需要在这方面考虑 CORS。您需要的代码是:

<script type="text/javascript">
    $(document).ready(function()
    {
        $("#content").load("http://vietduc24h.com");
    })
</script>

当您的域不在vietduc24h.com 中时,您可能会遇到一些安全异常。为了避免这种情况,您可以在此处托管本地代理。在 PHP 中,我们这样做(url.php):

<?php
    $url = file_get_contents(urlencode($_GET["url"]));
    echo $url;
?>

而在脚本中,需要这样修改:

<script type="text/javascript">
    $(document).ready(function()
    {
        $("#content").load("proxy.php?url=http://vietduc24h.com");
    })
</script>

【讨论】:

    【解决方案2】:

    用 jQuery Load 函数试试这段代码:

    $('#content').load('http://vietduc24h.com', function() {
      alert('Load was performed.');
    });
    

    如果由于跨域资源共享策略而遇到安全问题,则必须在服务器代码中使用代理。

    【讨论】:

      【解决方案3】:

      试试这个:

        $("#content").html('<object data="http://vietduc24h.com">');
      

      取自this answer

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-05
        • 2012-01-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-05
        • 1970-01-01
        相关资源
        最近更新 更多