मैं एक ही समस्या यह मेरा समाधान (सुपर सरल लेकिन बहुत लचीला नहीं) था:
आप पृष्ठ आप के लिए दो <h:panelGroup>
तत्वों, एक जोड़ने की जरूरत के कुछ भाग के लिए एक लोड हो रहा है indikator जोड़ना चाहते हैं लोडिंग संकेतक और लोड सामग्री के लिए एक।
उदा .:
<h:panelGroup styleClass="contentPreview content">
<h:outputText id="previewText" styleClass="updatePreview" value="#{lazyResultBean.previewContent}" />
</h:panelGroup>
<h:panelGroup styleClass="contentPreview loading">
<p:graphicImage style="width: 15px; height: 15px;" name="/images/ajax-loader.gif" />
</h:panelGroup>
महत्वपूर्ण सही styleClass लोड हो रहा है संकेतक और content
सामग्री के लिए के लिए के loading
स्थापित करने के लिए है। दोनों पैनलों में भी एक कक्षा है जो वे साझा करते हैं, इस मामले में contentPreview
कक्षा।
लोडिंग संकेतक और सामग्री के बीच स्विच करने के लिए आपको बस एक जावास्क्रिप्ट फ़ंक्शन कॉल करने की आवश्यकता है। संकेतक छिपाने और सामग्री दिखाने के लिए showLoading('.contentPreview')
लोडिंग इंडिकेटर hideLoading('.contentPreview')
दिखाने के लिए।
उदा।:
function showLoading(clazz) {
console.log('showLoading' + clazz);
var loadingElements = $(clazz + '.loading');
loadingElements.each(function (index, el) {
el.style.display = 'block';
});
var contentElements = $(clazz + '.content');
contentElements.each(function (index, el) {
el.style.display = 'none';
});
}
function hideLoading(clazz) {
console.log('hideLoading' + clazz);
var loadingElements = $(clazz + '.loading');
loadingElements.each(function (index, el) {
el.style.display = 'none';
});
var contentElements = $(clazz + '.content');
contentElements.each(function (index, el) {
el.style.display = 'block';
});
}
अच्छी तरह से है, लेकिन मैं विभिन्न ajax स्थिति को गति प्रदान करने के लिए क्या चाहते हैं:
जावास्क्रिप्ट कार्य के लिए कोड इस प्रकार लग रहा है? मैं इसे पूरी तरह से बंद नहीं करना चाहता। मैं अलग-अलग व्यवहार करना चाहता हूं जो अलग-अलग व्यवहार करता है – lukas
मुझे समाधान देने में भी दिलचस्पी है ... क्या आपको कुछ ऐसा अच्छा लगता है जो अच्छी तरह से काम करता है? – simonC
प्राइमफेस 5.1 में यह विशेषता 'ग्लोबल' नहीं है। कोई उपाय। स्वत: पूर्ण घटक के लिए। –