如何将URL调用的HTML结果附加到DOM中
How to append the HTML results of a URL call to the DOM?
我有一个位于另一个域上的URL,如下所示:
http://ads.adserver.com/ad?site=1233&zone=45435
当你在浏览器中键入这个URL时,结果是这样的HTML:
<a href="http://www.google.com" target=""><img src="htt://ads.adserver.com/i/image.gif" border="0"/></a><br/><a href="http://ads.adserver.com/redir/12313" target="">Test</a>
上面的渲染为一个图像包裹在一个链接下面的第二个链接
我试图在脚本标记中捕获这个URL,并将其附加到DOM中,但它没有呈现上面的HTML。
var ad_script = document.createElement('script');
ad_script.type = 'text/javascript';
ad_script.src = 'http://ads.adserver.com/ad?site=1233&zone=45435';
li.appendChild(ad_script);
有没有其他方法可以调用这个URL并将结果放在页面上?我不能使用$.getScript(),因为我没有在全局上下文中调用它。我需要这个HTML正好出现在我希望它出现的地方。
编辑:我尝试这种途径的唯一原因是第三方没有提供JSON-p接口。
编辑2:很遗憾,我不在应用程序服务器上。
第三版:这是给iPhone的。
由于跨域问题,您的加载方式受到限制。。一个简单的方法是将图像加载到它自己的iframe 中
<iframe src='http://ads.adserver.com/ad?site=1233&zone=45435' height='200px' width='200px' />
您需要使用ajax来实现这一点。最简单的方法可能是jQuery的.load()方法。
假设您希望内容进入的元素的id为holder
,那么您将执行
('#holder').load('http://ads.adserver.com/ad?site=1233&zone=45435')
它会将网页的内容放入您选择的元素中。http://api.jquery.com/load/
edit:对不起,忘记了跨站点ajax的限制。您可以设置一个php页面,如:
if(isset($_GET['url'])){
echo file_get_contents($_GET['url'])
}
然后做
('#holder').load('http://yoursite.com/yourpage.php?url=http://ads.adserver.com/ad?site=1233&zone=45435')
采用jsonp方法。使用一个实际的script标记,并放置一个正在执行的javascript函数作为将该html标记添加到dom的响应。它将把它添加到脚本标记所在页面的dom中。
有许多jQuery ajax调用可以实现这一点,例如:jQuery.get('http://ads.adserver.com/ad?site=1233&zone=45435',函数(数据){jQuery(updateElementQuery).html(数据);});
尝试使用jquery方法"加载"
`$('#result').load(url, function(response) {
$('#my-li').append($('#result').html());
$('#result').html(null);
});`
其中#result
是一些隐藏的div
- Angular JS根据搜索结果和点击事件更新DOM元素
- 防止多次显示弹出窗口.Ajax添加结果已在DOM中注册
- 如何在 javaScript 中使用 DOM 自动递增编号结果
- 当我尝试两个 DOM 中的 get 元素时,HTML 和 Xpath 结果未定义
- 如何使用 HTML 5 日期输入增加月份 - 将结果输出到 DOM
- 试图理解为什么添加到DOM中的AJAX对象返回未定义的结果
- QUnit:任何不在网站DOM树中输出结果的官方解决方案
- 为什么使用jQuery设置属性会得到与使用DOM方法设置不同的结果呢
- InvalidStateError:XPath结果出现DOM异常11
- 在所有类型的DOM等待机制中,将AMD javascript计算为库中的非AMD结果是未定义的
- 如何将URL调用的HTML结果附加到DOM中
- 遍历DOM,然后连接结果文本值
- CSS过渡作为jQuery DOM操作的结果
- 从带有DOM的JavaScript函数返回不必要的结果
- JavaScript DOM依赖于视口导致奇怪的结果
- 对HTML应用DOM操作并保存结果
- 根据SQL查询表结果为Textarea创建DOM
- SVG的角度替换指令(结果在DOM中,但未显示)
- dom events - 如何将 JavaScript 按钮操作的结果复制到另一个 html 页面上
- Selenium将dom元素传递给JQuery,并将结果返回给c#