कैसे ऐसा किया जाए कि पूरी पृष्ठ को फिर से लोड न किया जाए
नमस्ते।
मैं Drupal 7 के लिए एक थीम बना रहा हूँ, सब कुछ ठीक चल रहा है। कुछ सवाल उठ रहे हैं।
मेरी थीम के बारे में थोड़ा सा।
मुख्य मेनू प्राइमरी लिंक क्षेत्र में है (जहाँ सामग्री का प्रकार चुना जाता है) (और हेडर क्षेत्र में)
एक विशेष प्रकार के लेखों के लिए नेविगेशन मेनू है, जो मुख्य मेनू से बदलता है। (बाएँ कॉलम क्षेत्र में) और (मुख्य-wrapper क्षेत्र में)
और एक कंटेंट कॉलम है जिसमें वास्तव में मुख्य मेनू के अनुसार विशेष कंटेंट टाइप प्रदर्शित होता है। (दाएँ कॉलम क्षेत्र में) और (मुख्य-wrapper क्षेत्र में)
पहला सवाल।
कैसे ऐसा किया जाए कि प्राइमरी लिंक में चयन करते समय केवल नीचे की संरचना वाला क्षेत्र पुनः लोड हो? इसके अनुसार मुख्य-wrapper क्षेत्र
फिर बाएँ कॉलम क्षेत्र में चयन करने पर केवल दाएँ कॉलम क्षेत्र पुनः लोड हो।
मुझे लगता है कि यहाँ AJAX का उपयोग करना चाहिए, लेकिन इस विषय पर मुझे कुछ स्पष्ट नहीं मिला।
दूसरा सवाल
कैसे ऐसा किया जाए कि बाएँ कॉलम में एक विशेष कंटेंट टाइप प्रदर्शित हो। (विशेष प्रकार-फॉर्म) मुख्य मेनू के प्रत्येक आइटम के लिए अलग-अलग सूची और इसके अनुसार दाएँ कॉलम में बाएँ कॉलम में चयनित तत्व के आधार पर।
तीसरा सवाल
मैंने 3 कॉलम बनाए हैं और उनकी ऊँचाई अलग-अलग है। मैं चाहता हूँ कि वे एक ही ऊँचाई के हों। फॉर्मेटिंग के लिए Div का उपयोग कर रहा हूँ।
page.tpl.php में मैं Drupal 7 का उपयोग कर रहा हूँ
कोड का अगला हिस्सा
<script language="JavaScript" type="text/javascript">
	function setEqualHeight(columns){
		var tallestcolumn = 0;
		columns.each(function(){
			currentHeight = $(this).height();
			if(currentHeight > tallestcolumn){
				tallestcolumn = currentHeight;
				}
			}
		);
		columns.height(tallestcolumn);
	}
	$(document).ready(function() {
		setEqualHeight($(".container > div"));
});
</script>
इस समस्या को अंततः रात के खाने के बाद सुलझा लिया :) पता चला कि Drupal 7 में $ लिखने पर यह पसंद नहीं करता है
इसे jQuery से बदलना होगा और सब कुछ तुरंत काम करने लगा।
जैसा कि मैंने पढ़ा, इसका कारण यह है कि jQuery noConflict मोड में काम करता है यह लगभग इस तरह होना चाहिए
jQuery(document).ready(function() { setEqualHeight(jQuery(".container > div")); });
तो हर जगह $ को jQuery से बदलें और आपको खुशी मिलेगी।
उम्मीद है कि यह जानकारी किसी के लिए उपयोगी होगी।
पहले 2 सवाल खुले रहते हैं।