我在asp文件的正文中运行了一些jquery。它是影响的下拉菜单后立即。 该脚本运行正常,问题是在firefox中加载脚本需要一段时间。
如何在不将身体或头部向上移动的情况下加快速度。
请注意:提供的链接是实时网站,我知道它正在解决一个对象错误,因为我有 一个旧版本的jQuery。 (在我们的内部网站上,jquery是最新版本)
链接:http://www.casa.gov.au/scripts/nc.dll WCMS:PWA :: PC = PC_91330
代码如下:
<script>
$(document).ready(function() {
$(document).on("change","select#state",function(e){
$("form#state").submit();
});
});
</script>
<form id="state" action="avsafety.asp" method="get">
<p>State:<br/>
<select id="state" name="state">
<option label="ACT" value="ACT" <%if request.querystring("state") = "ACT" then response.write("selected") %>>ACT</option>
<option label="NSW" value="NSW" <%if request.querystring("state") = "NSW" then response.write("selected") %>>NSW</option>
<option label="NT" value="NT" <%if request.querystring("state") = "NT" then response.write("selected") %>>NT</option>
<option label="QLD" value="QLD" <%if request.querystring("state") = "QLD" then response.write("selected") %>>QLD</option>
<option label="VIC" value="VIC" <%if request.querystring("state") = "VIC" then response.write("selected") %>>VIC</option>
<option label="SA" value="SA" <%if request.querystring("state") = "SA" then response.write("selected") %>>SA</option>
<option label="TAS" value="TAS" <%if request.querystring("state") = "TAS" then response.write("selected") %>>TAS</option>
<option label="WA" value="WA" <%if request.querystring("state") = "WA" then response.write("selected") %>>WA</option>
</select>
<noscript><input type="submit" value="Search" /></noscript>
</p>
</form>
答案 0 :(得分:2)
您正在使用on
整个文档。基本上等待事件一直冒泡到最高级别。直接监控元素。
$("select#state").on("change",function(e){
$("form#state").submit();
});
就更大的性能提升而言,我会更少关注这个单独的javascript以及整个网站的更多内容。为什么加载缓慢?您可以启用压缩,利用CDN。
另外,看起来很奇怪FF会很慢。通常(总是?)IE最终变慢。您可能想尝试另一台计算机,看看它有多快。 FF中可能存在导致问题的扩展。
您还可以利用Chrome开发者工具。检查哪些部分或您的网站造成了最大的性能损失。因为$(document).ready()
正在等待加载DOM,所以单个元素可能是性能问题的原因。