gpt4 book ai didi

javascript - 如何创建多个剧透按钮

转载 作者:行者123 更新时间:2023-11-28 17:49:19 24 4
gpt4 key购买 nike

在构建我的网站时,我决定添加一个显示/隐藏(剧透)部分以节省空间。这是我的“工作”代码:

JQuery:

$(document).ready(function(){ //Waits for page load
$("a.spoilerButton, a.spoilerButtonDark").click(function () { //Attaches listeners
$($(this).attr('href')).slideToggle(1000, null); //Open/closes spoiler
});
});

CSS:

a.spoilerButton,
a.spoilerButtonDark {
text-decoration:none;
color:white;
}
a.spoilerButton:hover,
a.spoilerButtonDark:hover {
color:grey;
cursor: pointer;
}
a.spoiler {
display:none;
}

HTML:

<div id="spoiler1" class="spoiler">Content</div> <!--Spoiler-->

<div class="contentBoxFooter">
<a href="#spoiler1" class = "spoilerButton">Show/Hide</a> <!--Button-->
</div>

我想要什么:

  • 支持多个按钮
  • 在 HTML 中的任何位置将按钮链接到其适当的剧透的方法

我面临的问题:

  • 不完全知道将按钮链接到相应剧透的正确方法,或者如果我做错了
  • 当前方法在 anchor 标记中使用 href,它会在每次点击时移动页面滚动位置

主要问题:

我考虑过使用 anchor 标记中的 ID 标记来告诉脚本剧透 ID 是什么,尽管我认为 ID 标记不是为此目的而设计的。我应该这样做吗,或者这不是正确的做法吗?

最佳答案

不知道我是否理解正确你的问题。
此页面上有四个链接可打开相应的剧透标签。
这只是一个简单的例子,希望对您有所帮助。

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
.spoiler {
display:none;
width:100%;
height:50px;
background-color:red;
margin-bottom:10px;
}
.contentBoxFooter{position:absolute;bottom:10px;}
</style>
</head>
<body>
<div id="a1" class="spoiler">Content</div>
<div id="a2" class="spoiler">Content</div>
<div id="a3" class="spoiler">Content</div>
<div id="a4" class="spoiler">Content</div>
<div class="contentBoxFooter">
<a href="a1" class = "spoilerButton">Show/Hide</a>
<a href="a2" class = "spoilerButton">Show/Hide</a>
<a href="a3" class = "spoilerButton">Show/Hide</a>
<a href="a4" class = "spoilerButton">Show/Hide</a>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".spoilerButton").click(function (e) {
e.preventDefault()
var foo=$(this).attr('href')
$('#'+foo).slideToggle(1000);
});
});
</script>
</body>
</html>

关于javascript - 如何创建多个剧透按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22624782/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com