2014-05-22 5 views
12

मैं एफ़िक्स (ट्विटर बूटस्ट्रैप 3) के ऑफसेट को किसी अन्य मान में कैसे बदलूं?बूटस्ट्रैप एफ़िक्स के ऑफसेट को रीसेट/बदलना

जब मैं इस तरह दो बार विधि कॉल करने की कोशिश की, एक दूसरे को नजरअंदाज किया जा रहा है और कोई असर नहीं करता है:

$('#navbar-main').affix({ offset: 100}); 
$('#navbar-main').affix({ offset: 200}); // ---> the offset will not change to 200px 

affix बुला दूसरी बार मदद नहीं की पहले .affix कॉलबैक रीसेट किया जा रहा या तो:

$('#navbar-main').affix({ offset: 100}); 
$(window).off('.affix'); 
$('#navbar-main').affix({ offset: 200}); // ---> the offset will not change to 200px 

उत्तर

11

यहां बताया गया है। कुंजी off पर .affix पर, और 0xको प्रत्यय तत्व पर कॉल करने के लिए है। (Dysko से)

$(window).off('.affix') 
$('#navbar-main').removeData('affix').removeClass('affix affix-top affix-bottom') 
$('#navbar-main').affix({ offset: 400}) 

बूटस्ट्रैप 3:: < 3 (से es128)

बूटस्ट्रैप: चलो कहते हैं मैं #navbar-main का प्रत्यय रीसेट करना चाहते हैं

$(window).off('.affix') 
$('#navbar-main').removeData('bs.affix').removeClass('affix affix-top affix-bottom') 
$('#navbar-main').affix({ offset: 400}) 
38

याद है, आप के लिए उपयोग किया डेटा विधि के साथ किसी भी समय कन्स्ट्रक्टर ...

इसलिए यदि आप केवल एक मूल्य अपडेट करने का प्रयास कर रहे हैं ... आप कर सकते हैं:

$('#navbar-main').data('bs.affix').options.offset = newOffset 

आशा व्यक्त की कि मदद करता है < 3 वसा

+9

मत भूलना कि ऑफसेट एक ऊपर/नीचे संपत्ति के साथ एक वस्तु है। मैं .options.offset = x का उपयोग कर रहा था; और नहीं .options.offset.top = x; और मेरा चिपकने वाला div पागल हो रहा था। – Aknosis

+0

काम करता है। धन्यवाद @ फाट – kach

संबंधित मुद्दे