我有这段代码:
<script>
function cargar(url){
var iframe = $('<iframe>');
iframe.attr('src', url);
$('#screen').html(iframe);
}
$(document).ready(function(){
$('ul li a').click(function(e){
e.preventDefault();
cargar($(this).attr('href'));
$('ul li a').removeClass('active');
$(this).addClass('active');
});
$('ul li a').first().click();
});
</script>
生成iframe(包含带有JavaScript和Flash的全景查看器)并将其插入div。
事情就是这个代码,在本地,Firebug跳转:
Elemento referenciado por ID/NAME en el ámbito global. Use el estándar del W3C document.getElementById() en su lugar.
google tranlated
Element referenced by ID / NAME in global scope. Use the W3C standard document.getElementById () instead.
在线它不会跳过任何错误或警告,但脚本无法正常工作:http://toniweb.us/m/panorama/panorama.html(控件丢失且自动播放未开启)
问题是我不知道如何向你们展示当地的版本,所以我只提供.zip以防万一有人愿意看看:http://toniweb.us/m/panorama/panorama.zip
我真的会对此有任何想法,我的想法已经不多了,我应该这么做了...... :(
答案 0 :(得分:1)
Element referenced by ID / NAME in global scope
此消息与对DOM元素的引用相关(在您的情况下)为ptviewer
而不是document.getElementById('ptviewer')
。这些调用是从Java applet进行的(阅读Java和Javascript之间的交互)。
但是为了摆脱这些消息你需要做的就是(我反编译ptviewer.class)是打开ptdefault.html
文件并替换一个字符串
{inits=javascript:loaded = true,ptviewer.startAutoPan(0.3,0,1) }
带
{inits=javascript:loaded = true,document.getElementById('ptviewer').startAutoPan(0.3,0,1) }