2012-06-05 19 views
5

मैं अपने jquery मोबाइल ऐप पर सभी पृष्ठों पर एक ही हेडर और पाद लेख रखना चाहता हूं और इसे एक अलग फ़ाइल का उपयोग करके नियंत्रित करना चाहता हूं उदाहरण के लिए footer.html। PHP का उपयोग करना आसान है, लेकिन मैं नहीं कर सकता क्योंकि मैं इस ऐप का उपयोग फोनगैप के साथ करने की योजना बना रहा हूं।विभिन्न पेजों पर Jquery मोबाइल समान पाद लेख

सर्च कर रहे हैं चारों ओर मैं

<div data-role="footer"> 
<div class="footerExt"></div> 
    </div> 

और जावास्क्रिप्ट

$('.footerExt').load('footer.html') 

का उपयोग कर हालांकि इस काम नहीं कर रहा पाया। मुझे जिक्र करना चाहिए कि मैं जावास्क्रिप्ट शुरुआती हूं, मैं मुश्किल से समझता हूं कि क्या चल रहा है।

<div class="footerExt"></div> 

रहे हैं:

धन्यवाद एक बहुत

उत्तर

8

प्रयास करें, यह मेरी कोड के साथ काम करता है:

$('[data-role=page]').live('pageshow', function (event, ui) { 
      $("#" + event.target.id).find("[data-role=footer]").load("footer.html", function(){ 
       $("#" + event.target.id).find("[data-role=navbar]").navbar(); 
      }); 
     }); 

यह gist पूरे कोड को दर्शाता है।

+0

धन्यवाद आपका बहुत काम करता है! बस मैं फिर से धन्यवाद के लिए क्या देख रहा था। :) – P22

+0

यह अच्छी तरह से काम करता है लेकिन किसी भी विचार को यह ui-btn-active के साथ कैसे काम करना है? या यह भी संभव है क्योंकि यदि मैं बटन को कक्षा में जोड़ता हूं तो सभी बटन होम पेज पर सक्रिय होते हैं। – P22

+0

आदर्श रूप से आपको अन्य बटनों से एक बटन को अलग करने के लिए विषय लागू करना चाहिए http://jquerymobile.com/demos/1.1.0/docs/buttons/buttons-themes.html – dhaval

0

आप "पाद लेख" एक डाटा-भूमिका के साथ एक div = के लिए बाहरी एचटीएमएल कोड को लोड करने की जरूरत है, तो आप को बदलने की जरूरत

<div data-role="footer" class="footerExt"></div> 

और उदाहरण के लिए आपके पाद लेख एचटीएमएल एक h3

012 हो सकता थाघटना के बाद से
<h3>This is your footer</h3> 
+0

मेरे कोड अब की तरह लग रहा बदलें: कंसोल में यह लेखन त्रुटि दे देंगे। यह: '

' लेकिन दुर्भाग्य से यह अभी भी डब्ल्यू नहीं है orking। वास्तव में यकीन नहीं है कि मैं क्या गलत कर रहा हूं। धन्यवाद – P22

1

jquery 1.9 और ऊपर live is now deprecated से कृपया फ़ंक्शन का उपयोग करें। $ (...) एक समारोह

उदाहरण से सक्रिय नहीं है बदलने अपने कोड

$('[data-role=page]').live('pageshow', function (event, ui) { 
      $("#" + event.target.id).find("[data-role=footer]").load("footer.html", function(){ 
       $("#" + event.target.id).find("[data-role=navbar]").navbar(); 
      }); 
     }); 

साथ

$('[data-role=page]').on('pageshow', function (event, ui) { 
       $("#" + event.target.id).find("[data-role=footer]").load("footer.html", function(){ 
        $("#" + event.target.id).find("[data-role=navbar]").navbar(); 
       }); 
      });