【发布时间】:2016-09-08 18:27:44
【问题描述】:
我有一个包含大约 10 个列表项的订单列表,这些列表项具有与之关联的锚标记链接。我试图强制用户在访问链接后只能单击父 li 的子级。所以从某种意义上说,我想强制用户按 ol 生成的顺序点击 li 链接。
这是我的html:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>titlePage</title>
<link rel="stylesheet" type="text/css" href="titlePage.css"></head>
<script src="../jsLibraries/jquery-3.1.0.js"></script>
<script src="titlePage.js"></script>
</head>
<body>
<img id="backgroundIMG" src="images/Chapter-v2.png">
<ol id="chapterNumbers">
<li><a href="../chapters/chapter0.html">Chapter 0 - Animate Content</a></li>
<li><a href="../chapters/chapter1.html">Chapter 1 - Animate Content 2</a></li>
<li><a href="../chapters/chapter2.html">Chapter 2 - Video Content</a></li>
<li><a href="../chapters/chapter3.html">Chapter 3 - Video Content 2</a></li>
<li><a href="../chapters/chapter4.html">Chapter 4 - Audio Content</a></li>
<li><a href="../chapters/chapter5.html">Chapter 5 - Blah</a></li>
<li><a href="../chapters/chapter6.html">Chapter 6 - Blah</a></li>
<li><a href="../chapters/chapter7.html">Chapter 7 - Blah</a></li>
<li><a href="../chapters/chapter8.html">Chapter 8 - Blah</a></li>
<li><a href="../chapters/exam.html">Exam</a></li>
</ol>
<header id="courseTitle"> 001234OOELNA - Example Course Using Adobe Animate </header>
</body>
</html>
这是我开始使用的 jQuery JS:
$(document).ready(function(){
$("li").first().nextAll().click(function( event ) {
event.preventDefault();
});
});
这是与被访问的锚标签关联的 CSS:
a:visited {
color:white;
}
这里是输出的链接:
http://skywest.theyard.space/index/titlePage.html
谁能帮我弄清楚我哪里出错了,以及如何做到这一点,一旦点击第一个链接,第一个孩子的链接就会被激活(返回真?)等等,所以用户必须点击按顺序链接?
谢谢! 埃里克
【问题讨论】:
-
仅供参考,出于明显的安全原因,您不能在 javascript 中定位
:visited伪选择器。现在,如果您只想让用户在每个页面加载时按顺序单击,这当然是可能的 -
在每个页面上只显示“可用”链接有什么问题(即第1页只显示第1页链接,第2页显示第1,2页链接)?
-
所以一旦他们点击了第一个链接,那么他们就可以点击第二个链接,以此类推?他们可以多次点击同一个链接吗?
-
“所以从某种意义上说,我想强制用户按 ol 生成的顺序单击 li 链接” 不完全确定预期的结果是什么?用户必须按顺序点击
<a>?用户必须先点击<a>?那么,只能点击第二个<a>? -
如果不允许用户点击页面,为什么还要在页面中进行导航?只需省略每个页面中的额外链接即可。
标签: javascript jquery css html anchor