javascript focus()在Firefox和IE上不起作用? [英] javascript focus() not working on Firefox and IE?
本文介绍了javascript focus()在Firefox和IE上不起作用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
由于某种原因,我试图显示一个表单并将其聚焦,因为它仅适用于Chrome.如何使它在所有浏览器中都能正常工作?
I'm trying to appear a form and focus it, for some reason it only works on Chrome. How can I make it work across browsers?
<script>
function SearchCity(evt){
document.getElementById('ciudad-eq').style.display='none';
document.getElementById('buscarciudad').style.display='inline';
document.getElementById("city").focus();
}
</script>
<div onclick="SearchCity(event)" id="ciudad-eq" style="cursor: pointer;">
Not from Miami?
</div>
<div id="buscarciudad" style="display: none;">
<form role="search" method="post" id="searchform" action="insert/insert-ip.php">
<input type="text" id="city" name="ciudad" value="¿Cual es tu ciudad?" style="width: 140px;" >
<input type="submit" value="ir" style="padding: 2px 6px;">
</form>
</div>
您可以在这里看到它不起作用:
You can see it not working in here:
我该怎么做才能使其正常工作?谢谢
What can I do to make it work? Thanks
推荐答案
您只需要交换事物的顺序:
You just need to swap the order of things:
<div onclick="SearchCity(event)" id="ciudad-eq" style="cursor: pointer;">
Not from Miami?
</div>
<div id="buscarciudad" style="display: none;">
<form role="search" method="post" id="searchform" action="insert/insert-ip.php">
<input type="text" id="city" name="ciudad" value="¿Cual es tu ciudad?" style="width: 140px;" >
<input type="submit" value="ir" style="padding: 2px 6px;">
</form>
</div>
<script>
function SearchCity(evt){
document.getElementById('ciudad-eq').style.display='none';
document.getElementById('buscarciudad').style.display='inline';
document.getElementById("city").focus();
}
</script>
div必须在DOM中,JavaScript才能查找它们.这是JQuery的$(document).ready(function(){ ...});
The divs have to be in the DOM before JavaScript can look for them. This is the primary benefit of JQuery's $(document).ready(function(){ ...});
这篇关于javascript focus()在Firefox和IE上不起作用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文