【发布时间】:2014-01-08 03:00:27
【问题描述】:
我正在尝试学习在使用 jquery 或一般编程时如何根据逻辑进行思考;到目前为止,我遇到了这个问题:
HTML
<div id="content">
<a href="#" class="blog">Blog</a>
<a href="#" class="portfolio">Portafolio</a>
<div id="portfolio">
<ul>
<li>Item Portafolio</li>
<li>Item Portafolio</li>
<li>Item Portafolio</li>
</ul>
</div>
<div id="blog">
<ul>
<li>Item Blog</li>
<li>Item Blog</li>
<li>Item Blog</li>
</ul>
</div>
</div>
jQuery
(function() {
var blog = $('#blog'),
portfolio = $('#portfolio');
blog.hide();
portfolio.hide();
$.fn.fadeSlideToggle = function(speed, fn) {
//fadeToggle = opacity
//slideToggle = height
return $(this).animate({
"height" : 'toggle',
"opacity" : 'toogle'
}, speed || 400, function() {
$.isFunction(fn) && fn.call(this);
});
};
$('a').on('click', function(e) {
e.preventDefault();
var myString = "#" + $(this).attr('class');
blog.hide(300);
portfolio.hide(300);
$(myString).fadeSlideToggle(800);
});
})();
基本上,它工作正常,当您单击博客按钮时,它会显示博客 div,当您单击投资组合按钮时,它会显示投资组合 div,但是,当我单击博客然后再次单击博客时,问题就开始了,与另一个,我的逻辑隐藏了div并再次显示它,我只想找到一个逻辑,如果我多次单击相同的锚标记,我什么都不做,只有当我单击其他时才会更改。
有什么帮助吗??
提前致谢。
【问题讨论】:
-
您应该更改为另一个标题。选择任何随机的 SO 问题:我敢打赌它也是关于“编程逻辑和算法”的。