iT邦幫忙

0

網頁問題QQ 想要點擊按鈕滑到指定DIV區塊

  • 分享至 

  • xImage

如標題~
想要點擊按鈕後滑到指定區塊
但一直沒辦法讓他有滑動的效果,想請問是哪邊出錯了
(本人JS新手,程式碼為網路上搜尋後混著用QQ)

<script src="jquery-3.4.1.min.js"></script>
<script type="text/javascript">
  $(function(){
 var timer= 700;
    $('#about').click(function () {
    $("html,body").animate({ scrollTop: $('#about').offset().top}, timer);
    return false;
});

</script>
dragonH iT邦超人 5 級 ‧ 2019-08-05 17:07:24 檢舉
首先

code 不要貼圖
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

2
dragonH
iT邦超人 5 級 ‧ 2019-08-05 17:19:53

codepen

這樣嗎?

你的問題在於 id 給錯

const timer = 700;
$('#about').click(() => {
  $('html, body').animate({ scrollTop: $('#faq').offset().top }, timer);
})
看更多先前的回應...收起先前的回應...

改了還是不能滑動

dragonH iT邦超人 5 級 ‧ 2019-08-05 17:31:36 檢舉

我的 codepen 正常阿

或許你可以補上 html code

<style type="text/css">
	
	.box{height:300px;background-color: #DFD928;}
	.box1{height:300px;background-color: #DF8E28;}
</style>


<script src="jquery-3.4.1.min.js"></script>
<script type="text/javascript">
  $(function(){

var timer= 700;

    $('#about').click(function () {
    $("html,body").animate({ scrollTop: $('#faq').offset().top}, timer);
    return false;
});

</script>
	<div id="faq">滑到這</div>

為什麼貼完會切塊啊OAO

dragonH iT邦超人 5 級 ‧ 2019-08-05 17:34:14 檢舉

你可能需要用
```
```
包住

然後你可以看一下

瀏覽器 f12 console

你一開始的寫法

那邊有報錯

這邊要怎麼貼body的部分? 我從sublime複製過來有幾行消失了

<body>
	 <a href="#faq" id="about">點我
	 	<div class="box"></div>
	 	<div class="box1"></div>
	 	<div class="box"></div>
	 	<div class="box1"></div>
	 	<div class="box"></div>
	 	<div class="box1"></div></a>

   		<div id="faq">滑到這</div>	
</body>

有了感謝~

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	
	<style type="text/css">		
		.box{height:300px;background-color: #DFD928;}
		.box1{height:300px;background-color: #DF8E28;}
	</style>

	<script src="jquery-3.4.1.min.js"></script>
	<script type="text/javascript">
	  $(function(){
 var timer= 700;
 
        $('#about').click(function () {
        $("html,body").animate({ scrollTop: $('#faq').offset().top}, timer);
        return false;
    });
	</script>
</head>
<body>
	 <a href="#faq" id="about">點我
	 	<div class="box"></div>
	 	<div class="box1"></div>
	 	<div class="box"></div>
	 	<div class="box1"></div>
	 	<div class="box"></div>
	 	<div class="box1"></div></a>
   		<div id="faq">滑到這</div>	
</body>
</html>
dragonH iT邦超人 5 級 ‧ 2019-08-05 17:40:41 檢舉

你的 js

少了 })

$(function(){
  var timer= 700;
  $('#about').click(function () {
    $("html,body").animate({ scrollTop: $('#faq').offset().top}, timer);
    return false;
  });
})

還是沒滑動QQ 只有瞬間移動

dragonH iT邦超人 5 級 ‧ 2019-08-05 17:52:40 檢舉

所以你的 f12 console 有錯誤嗎?

你該不會沒有 import jquery 吧

試試看把兩個 script 標籤放在 body 標籤的結尾前面

dragonH iT邦超人 5 級 ‧ 2019-08-06 09:45:43 檢舉

幫他測完了

他的 code 原封不動貼上

補上 js 少的 })

就能正常運作

估計是沒 import jquery

ccutmis iT邦高手 2 級 ‧ 2019-08-06 10:08:14 檢舉

/images/emoticon/emoticon77.gif

dragonH iT邦超人 5 級 ‧ 2019-08-06 10:13:22 檢舉

/images/emoticon/emoticon50.gif

有了~ 謝謝大家><

我要發表回答

立即登入回答