jquery颜色转换html,关于html:使用jQuery转换DIV背景

我对JQuery非常陌生,但已经非常喜欢它。

当用户将鼠标悬停时,我正在尝试更改div的背景。 但是我无法更新bg。 到目前为止,这就是我所拥有的:

Untitled Document

#fish{background-image:url(images/fish_off.jpg);width:459px;height:474px;}

$('#fish').hover(

function(){$('#fish').css({background:"url(images/fish_on.jpg)"})},

function(){$('#fish').css({background:"url(images/fish_off.jpg)"})}

);

这是我的测试页,基于以下信息,我仍然遇到问题:

测试页

使用.mouseenter(),或者如果您想在mouseout上应用一个类,请使用.hover()

http://api.jquery.com/mouseenter/

http://api.jquery.com/hover/

$("div").hover(

function () {

$(this).css("background","#ddd");

},

function () {

$(this).css("background","#ccc");

}

);

您也可以仅通过CSS来执行此操作,如果您只想要rollver

#fish { background: #fff;

#fish:hover { background: #ccc; }

查看有关使用悬停的工作小提琴

http://jsfiddle.net/faLdY/

通过jquery应用背景图片略有不同

查看这个类似的问题

使用jQuery切换DIV背景图片

注意示例页面中CSS的应用方式不正确。

更改

$('#fish').hover(

function(){$('#fish').css({background:"url(images/fish_on.jpg)"})},

function(){$('#fish').css({background:"url(images/fish_off.jpg)"})}

);

对此

$('#fish').hover(

function(){$('#fish').css("background-image","url(images/fish_on.jpg)")},

function(){$('#fish').css("background-image","url(images/fish_off.jpg)")}

);

编辑:

这是一个正在工作的小提琴,完全按照您的要求

http://jsfiddle.net/C7KxR/

顺便说一句,这直接链接到您的图像。我希望那没事。

我通常会使用css,但我还将显示一个隐藏的div,以使我可以同时执行它们

很公平。如果要显示隐藏的div,则可能需要查看toggle,slideToggle()或fadeToggle()以及jquery-ui库(如果要进一步控制动画)。

我已应用您的反馈,但仍看不到更改。我在帖子中在页面上方添加了一个链接。不确定我在做什么错吗?

@Denoteone我认为您的问题出在应用.css的方式上,我在查看测试页后更新了答案。

谢谢你的帮助。问题可能与我对jquery库的引用有关吗?

也许。我倾向于做两件事:1.将脚本保存在页面的末尾,然后包装$(function(){//此处是脚本});在我的代码周围。这可能是这里的问题。

就是这样!谢谢你的帮助!

大!我猜该脚本在div存在之前已加载,因此具有fish ID的div在被调用时尚不存在。调用页面加载上的脚本,这样可以首先由浏览器加载页面。

$('#fish').hover(

function(){$('#fish').css({background:"url(images/fish_on.jpg)"})},

function(){$('#fish').css({background:"url(images/fish_off.jpg)"})}

);

您想使用带两个回调的.hover。一种用于mousein,一种用于mouseout。

更改

$('#fish').click(function()

{

$('#fish').css("background-image","url(images/fish_on.jpg)");

});

$('#fish').hover(function()

{

$('#fish').css("background-image","url(images/fish_on.jpg)");

}, function()

{

$('#fish').css("background-image","url(images/fish_ooff.jpg)");

});

只是为了让我明白第二个function()是将图像交换回正常...正确吗?

是。 .hover()具有2个函数,一个在mouseenter上,第二个在mouseleave上。请参阅api.jquery.com/hover

对,那是正确的。悬停主要只是mouseenter和mouseleave的别名。

您需要mouseover事件:

$('#fish').mouseover(...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值