我遇到Safari问题。我有一个使用jQuery的基本脚本,它对表单字段进行了一些更改,并为其添加了一些行为。当我使用文档就绪方法运行此脚本时,它在Firefox中很好,但在Safari中它并不总是运行初始更改。我可以点击刷新并使其运行良好的4/5次,但有时它不会像它应该的那样初始化。
这是在本地服务器上运行所以刷新非常快,我想知道在页面加载完成之前javascript是否正在执行。我已经尝试在页面底部调用脚本而不是标题,但这没有帮助。我记得听说不同的浏览器在不同的时间准备文件,并认为这有助于补救它,但它没有,我找不到任何关于该主题的进一步信息。
我遗失的任何可能是问题或解决方法?脚本本身似乎没有错。我使用jQuery颜色插件,除了它只是jQuery和我的脚本。
总是感谢帮助,谢谢大家!
这是代码。 initSearchBox()使用标题中的以下行运行。
$(document).ready(function(){initSearchBox();});
function randomFieldValue(){
var options = new Array(
'Lorem',
'Ipsum',
'Dolor',
'Sit',
'Amet'
)
t = Math.floor(Math.random()*(options.length - 1));
return options[t] ;
}
function initSearchBox(){
instanceDefText = randomFieldValue() ;
$('#search-form-field')
.attr('value',instanceDefText)
.css('color','#fff')
.animate({color:'#999'},1500)
.focus(function(){
if($(this).attr('value') == instanceDefText){
$(this).attr('value','')
.css('color','#000')
}
})
.blur(function(){
if($(this).attr('value') == ''){
instanceDefText = randomFieldValue() ;
$(this).attr('value',instanceDefText)
.css('color','#fff')
.animate({color:'#999'},1500)
}
});
}