【问题标题】:How to load cross domain url in html script tag如何在html脚本标签中加载跨域url
【发布时间】:2016-01-13 02:19:19
【问题描述】:

我想在我的网页上加载跨域 url html 内容。我读到它可以通过在脚本中加载 url 并调用全局回调函数来实现。我的代码在下面-

<html>
<body>

<div id="response"></div>

<script>
  function myFunction (data) {
    var stringData = JSON.stringify(data)
    document.getElementById('response').innerHTML = stringData;
  }
</script>
<script src="http://zeenews.india.com?callback=myFunction()"></script>

</body>
</html>

当我运行这个 HTML 文件时,我得到以下错误

Uncaught SyntaxError: Unexpected token <

我也可以在错误前面看到这个 url

?callback=myFunction():2 

请帮帮我。

【问题讨论】:

  • 我猜zeenews.india.com 实际上不是脚本文件,而是 HTML
  • 是的,我想加载 HTML 文件。
  • 你不能在脚本标签中这样做,如果你想要 HTML,你必须使用服务器端来抓取它
  • 但他们告诉 SO 可以这样做
  • 只有当它是一个 javascript 文件,而不是 HTML

标签: javascript jquery html cross-domain


【解决方案1】:

由于此标签,您会收到此错误

<script src="http://zeenews.india.com?callback=myFunction()"></script>

,因为您输入的 url 不返回 javascript 文件。 &lt;script&gt; 标签中的 src 属性仅适用于 js。

如果要在 response div 标签内显示网页的内容,则应在该 div 标签内使用&lt;iframe&gt; 标签,如下所示:

<div id="response">
    <iframe src="http://zeenews.india.com"></iframe>
</div>

【讨论】:

  • 有没有通过脚本标签获取跨域HTML?他们在很多地方都在 SO 上谈论它
  • Ajax 受同源策略的约束,所以这可能根本不起作用。
  • @user609306,不,没有。为什么你甚至想做这样的事情?脚本标签用于脚本
猜你喜欢
  • 1970-01-01
  • 2022-07-07
  • 1970-01-01
  • 2012-11-28
  • 2021-11-11
  • 1970-01-01
  • 2011-08-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多