在<object> </object>上设置新数据

时间:2013-04-24 10:58:32

标签: jquery html object

我在使用<object>时遇到问题。 我需要它来显示不同的外部页面,但它并不适合我。就像,在我第一次设置Data之后,更改它什么都不做。 我需要以某种方式刷新它吗?

这是我改变数据的jQuery代码:

$("#content").attr('data', urls[urlIdx]);

我的目标:

<div id="Main" style="width:100%;height:100%;">
    <object id="content" style="width:100%;height:100%;"/>
</div>

简单的东西。

urls是一个网址数组,urlIdx是我递增的计数器。

编辑: 我做了这个jsfiddle: http://jsfiddle.net/fJQm6/

基本上,第一次执行tick时,会设置对象的数据,但后续的ticks不会改变任何内容。

2 个答案:

答案 0 :(得分:0)

首先,object适用于视频等嵌入式内容,请参阅here

您可能想要使用的是iframe here

<iframe id="test" src="http://www.w3schools.com"></iframe>

然后你可以使用jquery来设置attr。

$('#test').attr('src','http://www.google.co.uk');

<强>更新

Object可用于网页,但首选iframe

使用iframe更新

fiddle

答案 1 :(得分:0)

可能重复 Changing data content on an Object Tag in HTML

var divEl = document.getElementById('Main');
var objEl = document.getElementById('content');
objEl.data = newUrl; //you can use aray logic here
// Refresh the content
divEl.innerHTML = divEl.innerHTML;

使用Jquery

$("#content").attr('data', urls[urlIdx]);
var $mainDiv=$("#Main");
$mainDiv.html($mainDiv.html());

这是更新的直播jsfiddle http://jsfiddle.net/fJQm6/3/