मैं JQuery पता प्लगइन से बहुत परिचित नहीं हूं, लेकिन मैं इस कोड के साथ आया हूं, और इस स्थिति को छोड़कर, यह बहुत अच्छा काम कर रहा है: जब मैं "एनएवी ए" पर क्लिक करता हूं, तो यूआरएल बदल जाता है और सामग्री भी बदल जाती है, लेकिन जब मैं पेज को फिर से लोड करता हूं, तो प्लगइन डिफ़ॉल्ट रूप से ट्रिगर नहीं होता है।
$("#player aside nav a").address(function(event, hash) {
var rel = $(this).attr('rel');
$('.ajax_container').hide().removeClass('current');
$('#player aside nav a').removeClass('active');
$('#'+rel).show().addClass('current');
$(this).addClass('active');
return $(this).attr('href').replace(/^#/, '');
});
कोई विचार, मैं इस फ़ंक्शन को पेज लोड पर कैसे ट्रिगर कर सकता हूं?
0
passatgt
23 जून 2011, 03:09
2 जवाब
सबसे बढ़िया उत्तर
मुझे लगता है कि आपको $.address.externalChange(fn). जब मैं पीछे क्लिक करता हूं तो यह घटना आग लग जाएगी और मुझे विश्वास है कि यह आपको हैश मान देता है।
1
John Kalberer
23 जून 2011, 03:19
आप बस उस लिंक के क्लिक इवेंट को ट्रिगर कर सकते हैं। इसे "डोम रेडी" फंक्शन में रखें:
$(function() {
$("#player aside nav a").click();
});
1
fehays
23 जून 2011, 03:14
अच्छा विचार है, लेकिन दुख की बात है कि यह मेरे लिए अच्छा नहीं है। मैंने अपने प्रश्न में बहुत सरल कोड पोस्ट किया है, वास्तविक चयनकर्ता यह है: $("#player अलग nav a,#player अलग .lejatszolistaim a.simple_playlist_link, #artists a"), इसलिए क्लिक() फ़ंक्शन को लागू करना कठिन है पेज लोड पर।
– passatgt
23 जून 2011, 03:18
1
मुझे अभी भी लगता है कि मेरा सुझाव काम करेगा यदि आपको वास्तव में पृष्ठ लोड पर एक लिंक पर क्लिक करने के व्यवहार की नकल करने की आवश्यकता है।
– fehays
23 जून 2011, 03:21
$.address.externalChange(function(event) { $('a[href='+event.value+']').trigger('click'); });
यह चाल चलेगा, धन्यवाद!