- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在从事这个项目时似乎正在自学 jquery。
我以为会有一种非常简单的方法来实现这种技术,但我到处搜索都没有成功。这是我们正在查看的页面:
http://igs.link-networkonline.com/campaign-landing-page/
中间的三个下拉菜单就是我们正在查看的内容。它们即将完成,我只需要帮助修复一些错误。
当选项卡向上滑动时,选项卡下方的 div 也会向下滑动。这很可能是因为我使用负定位来增加菜单...我不知道还能做什么!
如果其中一个打开,当您单击另一个时,第一个将关闭。
这些问题已经非常接近完成,它们只是没有按照用户期望的方式运行,并且代码变得相当庞大,无法保留在 header 中。
我现在遇到的问题:
a.当一个打开而第一个已经打开时,它会关闭第一个,但底部 div 上使用的负边距会增加太多,导致底部 div 干扰上面的内容。
b.初始打开/关闭切换后,需要单击 2 次才能切换,导致页面感觉损坏。
<小时/>更新的代码:
$(function() {
$(".first").toggle(function() {
$(".first").animate({'height': '295px', 'top': "-220px"});
$('.first img').attr('src','<?php bloginfo('template_directory'); ?>/images/downarrow.png');
$(".second").animate({'height': '75px', 'top': "0px"});
$(".third").animate({'height': '75px', 'top': "0px"});
$(".campaign-lower").animate({'margin-top': '-220px'});
$(".form").animate({'margin-top': '-220px'});
}, function() {
$(".first").animate({'height': '75px', 'top': "0px", 'overflow': "hidden"});
$('.first img').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
$(".campaign-lower").animate({'margin-top': '0px'})
$(".form").animate({'margin-top': '0px'});
});
$(".second").toggle(function() {
$(".second").animate({'height': '275px', 'top': "-200px"});
$('.second img').attr('src','<?php bloginfo('template_directory'); ?>/images/downarrow.png');
$(".first").animate({'height': '75px', 'top': "0px"});
$(".third").animate({'height': '75px', 'top': "0px"});
$(".campaign-lower").animate({'margin-top': '-200px'});
$(".form").animate({'margin-top': '-200px'});
}, function() {
$(".second").animate({'height': '75px', 'top': "0px"});
$('.second img').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
$(".campaign-lower").animate({'margin-top': '0px'});
$(".form").animate({'margin-top': '0px'});
});
$(".third").toggle(function() {
$(".third").animate({'height': '255px', 'top': "-180px"});
$('.third img').attr('src','<?php bloginfo('template_directory'); ?>/images/downarrow.png');
$(".first").animate({'height': '75px', 'top': "0px"});
$(".second").animate({'height': '75px', 'top': "0px"});
$(".campaign-lower").animate({'margin-top': '-180px'});
$(".form").animate({'margin-top': '-180px'});
}, function() {
$(".third").animate({'height': '75px', 'top': "0px"});
$('.third img').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
$(".campaign-lower").animate({'margin-top': '0px'});
$(".form").animate({'margin-top': '0px'});
});
});
非常感谢任何想法或方向。预先感谢您的知识!
最佳答案
实现此目的的一个简单方法是制作动画,例如.first
上的 .second 和 .third 单击以关闭,为 .first 和 .third 设置动画以在 .second
单击时关闭,依此类推...
您可以使用如下方式更改图像:
$('.first img').attr('src','new_source.png');
编辑:
底部的框将保留在该动画中:请注意,这是解决此问题的一种非常不优雅的方法,但它有效:
$(".first").toggle(function() {
$(".first").animate({'height': '270px', 'top': "-220px"});
$(".second").animate({'height': '50px', 'top': "0px"});
$(".third").animate({'height': '50px', 'top': "0px"});
$("#bottom").animate({'margin-top': '-220px'});
}, function() {
$(".first").animate({'height': '50px', 'top': "0px"});
$("#bottom").animate({'margin-top': '0px'});
});
编辑2:
这现在应该对你有用:
var first = false;
var second = false;
var third = false;
$(".first").click(function() {
if(!first){
first = true;
second = false;
third = false;
$(".second").css({'margin-bottom': '0px'});
$(".third").css({'margin-bottom': '0px'});
$(".first").animate({'height': '295px', 'top': "-270px"},function() {
$(".first").css({'margin-bottom': '-220px'});
});
$(".second").animate({'height': '75px', 'top': "-58px"});
$(".third").animate({'height': '75px', 'top': "-58px"});
$("img.button1").animate({'top': "-235px"});
$("img.button2").animate({'top': "-25px"});
$("img.button3").animate({'top': "-25px"});
$('img.button1').attr('src','<?php bloginfo('template_directory'); ?>/images/downarrow.png');
$('img.button2').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
$('img.button3').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
} else if(first) {
first = false;
second = false;
third = false;
$(".first").css({'margin-bottom': '0px'});
$(".first").animate({'height': '75px', 'top': "-58px"});
$("img.button1").animate({'top': "-25px"});
$('img.button1').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
}
});
$(".second").click(function() {
if(!second){
first = false;
second = true;
third = false;
$(".first").css({'margin-bottom': '0px'});
$(".third").css({'margin-bottom': '0px'});
$(".second").animate({'height': '295px', 'top': "-270px"},function() {
$(".first").css({'margin-bottom': '0px'});
$(".second").css({'margin-bottom': '-220px'});
$(".third").css({'margin-bottom': '0px'});
});
$(".first").animate({'height': '75px', 'top': "-58px"});
$(".third").animate({'height': '75px', 'top': "-58px"});
$("img.button2").animate({'top': "-240px"});
$("img.button1").animate({'top': "-25px"});
$("img.button3").animate({'top': "-25px"});
$('img.button2').attr('src','<?php bloginfo('template_directory'); ?>/images/downarrow.png');
$('img.button1').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
$('img.button3').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
} else if(second) {
first = false;
second = false;
third = false;
$(".second").css({'margin-bottom': '0px'});
$(".second").animate({'height': '75px', 'top': "-58px"});
$("img.button2").animate({'top': "-25px"});
$('img.button2').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
$("body").animate({'padding-bottom': '0px'});
}
});
$(".third").click(function() {
if(!third){
first = false;
second = false;
third = true;
$(".first").css({'margin-bottom': '0px'});
$(".second").css({'margin-bottom': '0px'});
$(".third").animate({'height': '295px', 'top': "-270px"},function() {
$(".third").css({'margin-bottom': '-220px'});
});
$(".second").animate({'height': '75px', 'top': "-58px"});
$(".first").animate({'height': '75px', 'top': "-58px"});
$("img.button3").animate({'top': "-210px"});
$("img.button1").animate({'top': "-25px"});
$("img.button2").animate({'top': "-25px"});
$('img.button3').attr('src','<?php bloginfo('template_directory'); ?>/images/downarrow.png');
$('img.button1').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
$('img.button2').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
} else if(third) {
first = false;
second = false;
third = false;
$(".third").css({'margin-bottom': '0px'});
$(".third").animate({'height': '75px', 'top': "-58px"});
$("img.button3").animate({'top': "-25px"});
$('img.button3').attr('src','<?php bloginfo('template_directory'); ?>/images/bluebutton.png');
$("body").animate({'padding-bottom': '0px'});
}
});
请注意,这不是真正解决此类问题的方法,但它确实有效..
关于jQuery SlideUp 动画显示更多内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9382520/
我希望用户能够单击该 div,向下滑动另一个子 div。当用户单击该子 div 内的按钮时,子 div 将向上滑动。 使用下面的 JQuery,div 可以很好地向下滑动。但是,当我单击按钮时,它会向
我有这行 JavaScript,我看到的行为是 selectedLi 立即消失而没有“向上滑动”。这不是我预期的行为。 我应该怎么做才能让 selectedLi 在被移除之前向上滑动? selecte
$(".item").hover( function () { $(this).slideDown().append( $("Yes/No") );
这个问题已经有答案了: Callback of .animate() gets called twice jquery (2 个回答) 已关闭 9 年前。 我正在使用 jQuery 创建一个多选项卡
我正在使用包含 ul 和 li 标签的 side-nav。 看起来像: Mobile PLATFORM SPECIFIC GUIDES Magento Extensi
是否可以使用.slideUp,但对象只能向上滑动(例如)20px,而不是消失在屏幕之外? HTML: Hide Tab 1 Tab 2 JQUERY: $(".
我正在使用 jQuery/Ajax 脚本来提交表单而无需重新加载页面。我的页面上有多个表单,它们都具有相同的类(并且没有 ID)。使用以下方式提交表单效果很好: $('document').r
我在从事这个项目时似乎正在自学 jquery。 我以为会有一种非常简单的方法来实现这种技术,但我到处搜索都没有成功。这是我们正在查看的页面: http://igs.link-networkonline
单击 div 对象时,slideUp 不起作用。 Jquery 代码: $('#show-about-btn').click(function() { $('#show-about-btn')
当 div 悬停在右侧时,我有一个列表会在右侧弹出。我想使用 jqueries SlideUp/Down 来显示和隐藏列表,这在大多数情况下都有效。但有时该功能会重复触发。不断地打开和关闭。我不知道为
$(document).ready(function() { $('#arrow').click(function () { if ($('#slide1').is(":hid
我将创建一个每周日历。当我切换星期时,我想将旧的星期向左或向右滑动以获取新内容。有谁能够帮助我?目前我没有好主意来实现这个。 非常感谢。 最佳答案 例如向左滑动而不是 .slideUp()您可以使用.
我想做的就是: 有7个数字和7个div,它们相互关联(nr 0与div 0有关系) 当点击其中一个数字时,它应该折叠所有其他未被选中的 div 可以一次多选 综上所述,基本上,页面有一些带有数字的标签
在表格行中显示或隐藏一些 div 后,如何为高度调整设置动画?基本上,在用户在单选组中进行选择并将鼠标悬停在该行之外后,其他单选选项将被隐藏以压缩表单。如果他们将鼠标移回该行,所有单选选项将再次出现。
当我滚动页面时,我想为页眉设置动画。它应该slideUp,添加一个类和slideDown。 slideUp 和 slideDown 按预期工作,但未添加类 header-small。怎么会? $(fu
我有一个我创建的 Accordion 样本;问题很简单:第一次单击任何 Accordion 项目时,slideUp() 动画不起作用。我在链接 jquery 方法方面仍然不太熟练,所以我的问题是:我应
如何确保多个 div 向上滑动?现在我有这个功能: $("div#personal").click(function() { $("div.1").slideUp("slow", function
我创建了一个带有旋转木马导航的 Flexslider。导航被设计为移动屏幕尺寸的垂直列表。 在移动设备上:我想隐藏列表(点击的幻灯片标题除外),以便用户可以看到所选的幻灯片。 在大屏幕上:我只想让简单
我在使用 jQuery slideUp() 方法时遇到问题。我有一个计时器设置为在 1 秒内向上滑动一个 div,然后显示一个段落。我的 div 中有一个位于屏幕中央的 h1 元素。问题是当这个 h1
我有一个图标可以同时触发向上滑动和向下滑动的效果,但是在向下滑动之后,如果我再次按下同一个图标,它就不再起作用了。 $(document).ready(function(){ $('.subc
我是一名优秀的程序员,十分优秀!