2014-12-18 19 views
0

我对揭示div的基于其ID的解决方案,但我想它淡入巢jQuery的内部JavaScript函数淡入事业部从显示:无

由于页面和复杂性。事实上它是在WordPress内部我想修改这个DOM函数来包含一个.show(“slow”)来使淡入淡出工作与重新设计整个页面。

下面是代码:

CSS座

<style> 
.biobox { display:none;} 
</style> 

的JavaScript,我想插入jQuery的进入要淡入 VAR的div = [ “一”, “二”]; var visibleDivId = null;

function toggleVisibility(divId) { 
    if(visibleDivId === divId) { 
     visibleDivId = null; 
    } else { 
     visibleDivId = divId; 
    } 

    hideNonVisibleDivs(); 
} 

function hideNonVisibleDivs() { 
var i, divId, div; 

for(i = 0; i < divs.length; i++) { 
    divId = divs[i]; 
    div = document.getElementById(divId); 

    if(visibleDivId === divId) { 

     div.style.display = "block"; 
     //the above line I want to swap with a jquery instance that includes .show("slow"), such as this code that does not work for me $(document).ready(function(){ $(div).show("slow"); }); 

    } else { 
     div.style.display = "none"; 
    } 
    } 
} 
</script> 

DIV的是隐藏在默认情况下

<div class="biobox" id="one"> 
<img src="http://deliveringhappiness.com/wp-content/uploads/2013/08/thought-leadership1.jpg" width="346" height="346" border="0" /> 
</div> 
<div class="biobox" id="two"> 
<img src="http://www.traianbadulescu.ro/wp-content/uploads/2012/10/leaders.jpg" width="402" height="317" /> 
</div> 

代码来切换DIV能见度生物盒中

<a href="#" onclick="toggleVisibility('one');">Close</a> 
    <a href="#" onclick="toggleVisibility('two');">Close</a> 

那么,如何来$(document).ready(function(){ $(div).show("slow"); });不代替div.style.display = "block";工作?顺便说一句我在此代码之前将jQuery插入页面。

回答

0

因为不能从display: none褪色到另一个显示值,无论是块,内联还是内联块,您需要一种隐藏不可见的div的不同方法。

您可以转换不透明度,或者与不透明度,z-index或左/右屏幕外隐藏结合使用。

+0

是的,我知道我可以通过两个类来实现,一个是display:none和另一个是不透明的,使用jQuery的淡入命令,但是我发现的代码全部写在jQuery中,我不知道如何把它与这个非jQuery代码整合起来,但我会在明天发布它。 感谢您确认您无法从显示中淡出:无。这关闭了一些可能的解决方案。 – ComputerGiant

+0

你的jQuery做这样的事情可能就像'element.toggleClass('showing');'你可以(或应该)在CSS中做的其他事情。 – Matijs