javascript - 隐藏一个元素并同时更改样式 css

标签 javascript jquery html css

我正在处理我的作品集,需要帮助#blind 一个元素并同时更改底部元素的样式属性。

想法是在两个元素之间存在一个固定的空间,就像这个 EXAMPLE

如果您在单击时看到该示例,则会出现一个栏,并且两个栏之间的空间仍然存在。然后如果你再次点击元素隐藏并且空间保持不变!

"#contacts"-> 我想隐藏的元素

"#line"-> 我要更改顶部属性的元素

我正在尝试使用名为“blind”的 jquery 函数来解决:

   $("#contacts").toggle("blind", {direction : "vertical"}, 500);

然后我用 if 得到 #line 的最高值:

   var line = $( "#line" ); 
   var  position = line.position(); 
   var top = position.top;
   if(top == value){
   $("#line").animate({top:'100px'}, time);
   } else { ... }

请帮忙!!

最佳答案

我会在没有 jQuery UI 的情况下使用 top 值和 z-index

var contactTop = 85,
    nextTop;
$(".oppen").click(function() {
        nextTop = nextTop !== contactTop ? contactTop : 5;
        $("#contacts").animate({top: nextTop}, 500);
    .....

Demo

要停止排队,除了使用 jQuery 的 .stop 之外,您还可以在 #line 上应用相同的技术

var contactTop = 85,
    nextTop,
    lineStart = 100,
    lineEnd = 180,
    lineTop = 100;
$(".oppen").click(function() {
    nextTop = nextTop !== contactTop ? contactTop : 5;
    $("#contacts").stop().animate({top: nextTop}, 500);
    lineTop = lineTop !== lineStart ? lineStart : lineEnd;
    $( "#line" ).stop().animate({top:lineTop}, 500);
});

Demo

关于javascript - 隐藏一个元素并同时更改样式 css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21319442/

相关文章:

asp.net - jQuery Ajax 到 asp.net asmx Web 服务抛出请求格式无效 : application/json

jquery - 尝试使用 jquery 循环幻灯片调整窗口大小

javascript - 我可以更改 $.fn 的方式吗?函数声明了吗?

javascript - JQuery 两个图像 slider css 问题

php - 没有定期刷新的 AJAX 聊天?

javascript - 如何序列化包含 jQuery ajax 加载字段的表单?

javascript - 在 IE 10 中使用复合键创建索引时出现 DataError

javascript - 如何将过滤器和网格应用于 D3 Choropleth

javascript - 自调用函数、Resharper 6.1 和 JS Lint - 可能对两者都有效?

javascript - 修复了当我滚动时 div 没有检测到我在页面上的位置的问题