我们在分区标记内保留了滚动视图。分区标记内只应出现一个段落。按下下一个按钮时,应显示下一个段落。
我们已使用location.href属性转到下一段。单击按钮一旦进入第二段,但是当它第二次单击时,它会停留在那里并且不会转到第三段。您认为这是什么问题?
我的代码:
<body>
<div>
<p id="one">HI</p>
<p id="two">Hello</p>
<br><br><br><br><br><br><br><br>
<p id="three">Howdy</p>
</div>
<button type="button" onclick="next()">Next</button>
</body>
div{
border: 1px solid black;
height: 200px;
width: 500px;
overflow: auto;
}
function next () {
if (location.href="#one") {
location.href="#two";
}
else if (location.href==="#two") {
location.href="#three";
} }
答案 0 :(得分:4)
小错误,错字可能......?
if (location.href="#one")
到此:
if (location.href=="#one") {
location.href="#two";
}
else if (location.href==="#two") {
location.href="#three";
} }
答案 1 :(得分:1)
您需要使用条件运算符==
而非赋值运算符=
if (location.href == "#one") {
location.href = "#two";
} else if (location.href === "#two") {
location.href = "#three";
}
答案 2 :(得分:0)
这是完整的解决方案..
你需要找到包含'#'
(hashtag)的拳头。
喜欢
function next () {
var hashtag =location.href.split('#');
// check array leangth if >1
if(hashtag.length>1)
{
var hashtagval = hashtag[1];
if (hashtagval=="one") {
location.href="#two";
}
else if (hashtagval=="two") {
location.href="#three";
}
//and so on
}
else
{
location.href="#one";
}
}
答案 3 :(得分:0)
function next () {
if (location.href.indexOf('one') != -1) {
location.href="#two";
}
else if (location.href.indexOf('two') != -1) {
location.href="#three";
}
else{
location.href="#one"
}
}