亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何轉到頁面上的特定元素?

如何轉到頁面上的特定元素?

慕標琳琳 2019-07-30 11:14:46
如何轉到頁面上的特定元素?在我的HTML頁面上,我希望能夠“轉到”/“滾動到”/“關注”頁面上的元素。通常情況下,我會使用帶有a的錨標記href="#something",但我已經使用hashchange事件和BBQ插件來加載此頁面。那么有沒有其他方法,通過JavaScript,讓頁面轉到頁面上的給定元素?這是我正在嘗試做的基本概述:function focusOnElement(element_id) {     $('#div_' + element_id).goTo(); // need to 'go to' this element}<div id="div_element1">   yadda yadda </div><div id="div_element2">   blah blah</div><span onclick="focusOnElement('element1');">Click here to go to element 1</span><span onclick="focusOnElement('element2');">Click here to go to element 2</span>
查看完整描述

3 回答

?
www說

TA貢獻1775條經驗 獲得超8個贊

插件形式的標準技術看起來像這樣:

(function($) {
    $.fn.goTo = function() {
        $('html, body').animate({
            scrollTop: $(this).offset().top + 'px'
        }, 'fast');
        return this; // for chaining...
    }})(jQuery);

然后你可以說$('#div_element2').goTo();滾動到<div id="div_element2">。選項處理和可配置性留給讀者練習。


查看完整回答
反對 回復 2019-07-30
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

如果元素當前在頁面上不可見,則可以使用本機scrollIntoView()方法。

$('#div_' + element_id)[0].scrollIntoView( true );

其中的true意思是與頁面頂部對齊,并false與底部對齊。

否則,有一個scrollTo()插件的jQuery就可以使用。

或者只是得到top position()(文檔)的元素,并設置scrollTop()(文檔)到該位置:

var top = $('#div_' + element_id).position().top;$(window).scrollTop( top );


查看完整回答
反對 回復 2019-07-30
  • 3 回答
  • 0 關注
  • 621 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號