Jquery 显示/隐藏div-删除单击的链接
我有这个脚本,但我需要它一个修正案,以便点击链接是隐藏的。基本上,隐藏div的内容将替换单击的链接 另外,通过PHP在一个页面上会有多个这样的实例-我如何停止一键打开所有?Jquery 显示/隐藏div-删除单击的链接,jquery,hide,show,Jquery,Hide,Show,我有这个脚本,但我需要它一个修正案,以便点击链接是隐藏的。基本上,隐藏div的内容将替换单击的链接 另外,通过PHP在一个页面上会有多个这样的实例-我如何停止一键打开所有? $(文档).ready(函数(){ $('.sub-nav ul').css(“显示”、“无”); //注意点击“滑动”链接。 $('.sub-nav btn')。单击(函数(){ $(本).next(“.sub-nav ul”).slideToggle(400); 返回false; }); }); btn1 btn1幻灯
$(文档).ready(函数(){
$('.sub-nav ul').css(“显示”、“无”);
//注意点击“滑动”链接。
$('.sub-nav btn')。单击(函数(){
$(本).next(“.sub-nav ul”).slideToggle(400);
返回false;
});
});代码>
btn1
btn1幻灯片数据
btn2
btn2数据幻灯片
btn3
btn3数据
不确定您到底想要什么,但您可以在单击链接时隐藏该链接,然后在单击详细信息时再次显示该链接,如下所示:
JavaScript
$(document).ready(function () {
$('.sub-nav ul').css("display", "none");
$(document).on("click", ".sub-nav-btn", function () {
$(this).next(".sub-nav ul").slideDown(400);
$(this).hide();
return false;
});
$(document).on("click", ".sub-nav ul", function () {
$(this).slideUp(400, function () {
$(this).siblings(".sub-nav-btn").show();
});
});
});
如果我误解了你,请详细说明
对于第一部分,这里有一个问题,为了确保这是您想要的,我将继续您的第二个请求
添加(在.click()函数下面)
编辑:如果理解正确,第二个问题也会得到解决。
2个div实例,单击仅显示immediate prev()和next()
(这是一个很酷的功能:D)
$(文档).ready(函数(){
$('.sub-nav ul').css(“显示”、“无”);
//注意点击“滑动”链接。
$('.sub-nav btn')。单击(函数(){
$(本).next(“.sub-nav ul”).slideToggle(400);
$(此).slideToggle(400);
返回false;
});
$('sub nav')。在('click','ul',函数(){
$(此).prev(“.sub-nav btn”).slideToggle(400);
$(此).slideToggle(400);
返回false;
});
});代码>
btn1
btn1幻灯片数据
btn2
btn2数据幻灯片
btn3
btn3数据
btn1
btn1幻灯片数据
btn2
btn2数据幻灯片
btn3
btn3数据
这里还有一个选项。基本上,您可以从.sub导航中获取子项并切换它们。
这假设您只有这两个元素。尝试下面的代码段(单击运行代码)
$(文档).ready(函数(){
$('.sub-nav ul').css(“显示”、“无”);
//注意点击“滑动”链接。
$('.sub-nav btn,.sub-nav ul')。单击(函数(){
$(this).parent().children().slideToggle(400);
返回false;
});
});代码>
*{margin:0;}
btn1
btn1幻灯片数据
btn2
btn2数据幻灯片
btn3
btn3数据
一键打开全部是什么意思?完美-有没有办法添加外部链接?i、 e.btn1幻灯片数据
@Grant您的意思是用普通div来代替吗?@Grant您可以使用锚定标记或添加onclick=“window.open”()http://www.google.com/“)”
事件,以打开新选项卡
$('.sub-nav').on('click', 'ul', function () {
$(this).prev(".sub-nav-btn").slideToggle(400);
$(this).slideToggle(400);
return false;
});