पर पहुंचने पर जांचें, मैं Angular.js के साथ सामग्री डिज़ाइन लाइट का उपयोग कर रहा हूं। घटना को पाने के लिए समस्या होने पर ईवेंट को नीचे पहुंचने पर कॉल किया जाता है। मैंने लगभग हर समाधान की कोशिश की है लेकिन काम नहीं कर रहा है। jQuery समाधान जैसा:सामग्री डिज़ाइन लाइट, नीचे स्क्रॉल
$(window).scroll(function() {
if($(window).scrollTop() + $(window).height() ==
$(document).height())
{
alert("bottom!");
}
});
या जावास्क्रिप्ट एक:
document.addEventListener('scroll', function (event) {
if (document.body.scrollHeight ==
document.body.scrollTop + window.innerHeight) {
alert("Bottom!");
}
});
Nothings काम कर रहे। इस प्रश्न के अनुसार: Material design and jQuery, scroll not working
स्क्रॉल ईवेंट .mdl-layout__content क्लास पर आग लगेगा, लेकिन फिर भी नीचे पहुंचने के लिए ईवेंट प्राप्त करने में असमर्थ है या नहीं।
और शायद मैं "mdl-layout__content" वर्ग पर भी बाध्य नहीं करना चाहता, क्योंकि यह प्रत्येक पृष्ठ पर शामिल किया जाएगा। मैं इसे सिर्फ एक विशेष पृष्ठ के लिए चाहता हूं।
संपादित: इस कोड को ठीक काम कर रहा है, लेकिन समस्या है:
function getDocHeight() {
var D = document;
return Math.max(
document.getElementById("porduct-page-wrapper").scrollHeight,
document.getElementById("porduct-page-wrapper").offsetHeight,
document.getElementById("porduct-page-wrapper").clientHeight
);
}
window.addEventListener('scroll', function(){
if($('.mdl-layout__content').scrollTop() + $('.mdl-layout__content').height() == getDocHeight()) {
alert("bottom!");
}
}, true);
समस्या है, हर बार जब मैं पेज बदलने के लिए, और वापस, बार घटना कहा जाता चाहिए गुणा किया जाता है की संख्या आता है। जब भी मैं पेज बदलता हूं या लिंक लिंक करता हूं, तो शायद यह बार-बार बाध्यकारी घटना है। मैं Angular.js का उपयोग कर रहा हूं, मैं इसे कैसे रोक सकता हूं?
'एमडीएल-layout__content' पुस्तक है या आप विंडो स्क्रॉल पर यह करना चाहते हैं? – Jai
मैं इसे कक्षा में से एक कक्षा में चाहता हूं जो सामग्री के अंदर है। मैं कोणीय जेएस का उपयोग कर mdl-layout__content में दृश्यों को जोड़ रहा हूं। –
क्या मतलब है आपका दस्तावेज़ स्क्रोल करने योग्य या विशिष्ट div स्क्रॉल करने योग्य है? – Jai