【发布时间】:2012-04-08 11:22:49
【问题描述】:
我有一些 jquery 脚本可以在鼠标悬停时更改元素图像,问题是它没有预加载图像。我知道代码有点糟糕(好吧,真的很糟糕),但我必须使用它,所以..
<script type="text/javascript">
$(document).ready(function() {
$('#searchbox_submit')
.mouseover(function() {
var src = $('.searchbox_submit').css("background-image",'url("/wp-content/themes/Locator/images/search_over.png")');
$('.searchbox_submit').attr("src", src);
})
.mouseout(function() {
var src = $('.searchbox_submit').css("background-image",'url("/wp-content/themes/Locator/images/search.png")');
$('.searchbox_submit').attr("src", src);
});
$('#bribe_submit')
.mouseover(function() {
var src = $('.bribe_submit_img').attr("src").replace(".png","_over.png");
$('.bribe_submit_img').attr("src", src);
})
.mouseout(function() {
var src = $('.bribe_submit_img').attr("src").replace("_over.png",".png");
$('.bribe_submit_img').attr("src", src);
});
///////////////////////////////////////////////////////////////////////searchbox
$('#searchbox_submit').click(function() {
//,{onAfter:function(){ alert('tests'); } }
//load_list($(this).parents('form').serializeArray());
codeAddress();
});
$("#search_butt").keypress(function(event) {
//load_list($(this).parents('form').serializeArray());
if ( event.which == 13 ) {
//load_list($(this).parents('form').serializeArray());
codeAddress();
event.preventDefault();
}
});
});
</script>
和输出:
<form>
<!--<input type="text" class="searchbox" name="s" value="" />-->
<input id="search_butt" class="i" type="text" value="Set your location: country, city" style="font-style:italic;" onblur="if(this.value=='') this.value='Set your location: country, city';" onfocus="if(this.value=='Set your location: country, city') this.value='';" name="s">
<span id="searchbox_submit" class="searchbox_submit"/>
</form>
有没有不改变整个脚本的简单方法?
附:抱歉英语不好:)
【问题讨论】:
标签: javascript jquery image styles preload