我在移动浏览器中使用IE浏览器。我将一个javascript函数添加到一个按钮,当用户点击它时会显示'hello'。
这很有效。
然后我添加一个计时器。
在桌面浏览器上运行。
它无法在我的移动浏览器上运行。
这是我的代码。 (注意我刚刚尝试发出警告('hi');在swapImages()中也没有用。
var div = document.getElementById('divImage');
var imgCached = document.getElementById('imgCached');
document.execCommand("BackgroundImageCache", false, true);
function OnImgLoaded() {
img1.src = imgCached.src;
}
var interval = 30;
var _timer;
var _index = 0;
function test() {
_timer = setInterval('swapImages()', interval);
}
function swapImages() {
imgCached.onload = OnImgLoaded();
imgCached.src = 'my server url~/' + '0000' + _index + '.jpg';
_index = _index + 1;
if (_index == 10) {
_index = 0;
clearTimeout(_timer);
}
}
UPDATE !! 我一直在Chrome桌面上运行,而不是IE。我在IE桌面上测试它。我得到了相同的错误,所以我现在可以调试。
错误就是这一行: img1.src = imgCached.src;
它告诉我: 无法获取未定义或空引用的属性'src'
我已将代码更改为: var imgLive = document.getElementById('imgLive'); (我已经重命名了img控件)
function OnImgLoaded() {
imgLive.src = imgCached.src;
}
我得到了同样的错误。
我查看Source并且控件正确命名..
由于
答案 0 :(得分:2)
我不确定以下系列在您的手机中是否有效:
imgCached.src = 'http://127.0.0.1/Cloud/test/' ...
计时器成功执行,但由于设备没有运行Web服务器,图像无法获得正确的src(除非您配置了一个)。
并回答您的主题问题,是的 - 您可以在移动浏览器中使用javascript计时器,就像桌面浏览器一样。
希望有所帮助。
答案 1 :(得分:0)
首先:你有没有调用启动计时器的test
函数?
第二:也许它真的document.execCommand("BackgroundImageCache", false, true)
,失败了 - 它可能无法在你正在使用的移动版IE中启用。您可以使用queryCommandEnabled
功能检查是否已启用,请在此处查看更多信息:http://msdn.microsoft.com/en-us/library/ie/ms536676(v=vs.85).aspx