2017-08-10 116 views

回答

0

你可以嘗試

$(window).resize(function(){ 
     if (window.matchMedia('(min-width: 1024px)').matches){ 
      $('.test').affix({offset: {top: 150} }); 
     }else{ 
      $('.test').affix({offset: {top: 250} }); 
     } 
    }).trigger('resize'); 
+0

或嘗試使用http://leafo.net/sticky-kit/ –

+0

謝謝,但我正在尋找一個CSS解決方案,而不是javascript – carl

+0

@carl你可以給我小提琴嗎?也許我可以幫你 你嘗試給你的詞綴塊填充? –

0

不能在CSS改變data-offset-top屬性,因爲它是不一個 CSS屬性。它是您嘗試使用的Bootstrap的affix的HTML屬性。

如果你想要一個CSS的解決方案,你可以不喜歡最接近 -

<div class="desktop-only" data-spy="affix" data-offset-top="160"> 
<div class="mobile-only" data-spy="affix" data-offset-top="change_to_whatever"> 

,然後在你的CSS,隱藏在適當的決議,這些各自類別 -

.mobile-only{ 
    display : none; 
} 

@media your_media_query_for_smaller_devices{ 
    .mobile_only{ 
    display : block; 
    } 
    .desktop-only{ 
    display : none; 
    } 
}