Javascript JS/jQuery在滚动时交换图像事件
我有一个网站菜单,它的工作原理非常类似:(在stackoverflow上找到) 我的问题是,设计师希望nav(主页按钮)中的徽标切换为较小的图标。不仅仅是缩小比例,而是改变图像。我可以使用其他addClass命令已经使用的scroll事件来更改img src吗Javascript JS/jQuery在滚动时交换图像事件,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个网站菜单,它的工作原理非常类似:(在stackoverflow上找到) 我的问题是,设计师希望nav(主页按钮)中的徽标切换为较小的图标。不仅仅是缩小比例,而是改变图像。我可以使用其他addClass命令已经使用的scroll事件来更改img src吗 $(window).scroll(function () { if ($(document).scrollTop() == 0) { $('#header').removeClass('tiny');
$(window).scroll(function () {
if ($(document).scrollTop() == 0) {
$('#header').removeClass('tiny');
$('#menu-spacing').addClass('nav-margin-top');
} else {
$('#header').addClass('tiny');
$('#menu-spacing').removeClass('nav-margin-top')
}
});
HTML
<div id="header" class="header fixed">
<div class="contain-to-grid">
<nav class="row top-bar">
<ul class="title-area">
<li><img src="img/resolute_logo.png" width="195" height="103" alt=""/> </li>
<li class="toggle-topbar menu-icon"><a href="#"><span></span></a></li>
</ul>
<div id="menu-spacing" class="hide-for-medium-down nav-margin-top">
$(窗口)。滚动(函数(){
if($(文档).scrollTop()==0){
$('#header')。removeClass('tiny');
$(“#菜单间距”).addClass('nav-margin-top');
}否则{
$('#header').addClass('tiny');
$(“#菜单间距”).removeClass('nav-margin-top'))
}
});
HTML
当然可以:
$(window).scroll(function () {
if ($(document).scrollTop() == 0) {
$('#header').removeClass('tiny');
$('#menu-spacing').addClass('nav-margin-top');
$('.title-area img').attr('src', 'img/resolute_logo.png');
} else {
$('#header').addClass('tiny');
$('#menu-spacing').removeClass('nav-margin-top');
$('.title-area img').attr('src', 'your-new-image.png');
}
});
参考:确定:
ref:为什么不将图像添加到css中
.header.tiny {
height:40px;
background: url(...);
}
您已经拥有的代码的其余部分
在上,为什么不将图像添加到css中
.header.tiny {
height:40px;
background: url(...);
}
您已经拥有的代码的其余部分
关于谢谢你的建议。我使用的是基础4,我没法弄清楚如何使用背景图像。我是基金会的忠实粉丝,但有时候事情不必要的复杂…这一次,硬编码图像对我来说最有意义。谢谢你的建议。我使用的是基础4,我没法弄清楚如何使用背景图像。我是基金会的忠实粉丝,但有时候事情不必要的复杂…这一次用硬编码对我来说最有意义。谢谢!我会进一步调查attr。我会马上标记它。沿着同样的路线,是否有可能使图像快速交叉淡入淡出,这样就不会有太多的跳跃?是的,这是可能的,但需要更多的努力。您需要将图像堆叠到彼此的中间,当您想要触发转换时,您将淡入淡出一个。您应该使转换非常快,因为用户可以通过快速上下滚动页面在当前转换结束之前触发下一个转换。谢谢!我会进一步调查attr。我会马上标记它。沿着同样的路线,是否有可能使图像快速交叉淡入淡出,这样就不会有太多的跳跃?是的,这是可能的,但需要更多的努力。您需要将图像堆叠到彼此的中间,当您想要触发转换时,您将淡入淡出一个。您应该使转换非常快,因为用户可以通过快速上下滚动页面,在当前转换结束之前触发下一个转换。