it-swarm-tr.com

En iyi nasıl bir uzantıya jQuery Themeroller dahil?

J3x'in jQuery dahil olmasıyla, Themeroller'ı kolayca dahil etme savaşının yarısı halledilir, ancak yine de Themeroller yönünün düzgün çalışması için sorun yaşıyorum. Ben komut dosyası etiketi "bir yere" eklemek genellikle işe yarar, ama bu komut dosyası etiketinin nereye değiştiğini gördüm - "hemen önce ya da hemen sonra" sürece widget'ları kırık oluşturma.

Themeroller'ı ve tüm widget'larını bir bileşene düzgün bir şekilde eklemenin Joomla-Correct yolu var mı?

2
GDP

bir bileşene belirli JS ve CSS eklemek için Michael Babker'ın tavsiyelerine uyuyorum:

Medya Klasörünü Kullanın, Geçersiz Kılınabilen Medyaya İzin Ver

http://www.babdev.com/blog/139-use-the-media-folder-allow-overridable-media

  • kök bileşen klasörünüzde media adlı bir klasör oluşturun
  • içeride 2 klasör oluşturun, css ve js Gerekli boş index.html tüm bu klasörler

  • component.xml dosyanızı uygun şekilde değiştirin:


<media folder="media" destination="com_yourcomponent">               
    <filename>index.html</filename>                 
    <folder>css</folder>
    <folder>images</folder>              
    <folder>js</folder>
</media>
  • içinde /views/yourcomponent/default.php

veya

/views/whateveristhenameofthisfolder/default.php

jS/CSS dosyalarınızı şu şekilde arayın:

JHtml::_('stylesheet', 'com_yourcomponent/yourcss.css', false, true);
JHtml::_('script', 'com_yourcomponent/yourjs.js', false, true);

Elbette, görünümlerinizin her biri için farklı JS/CSS komut dosyaları kullanabilirsiniz.

Umarım yardımcı olur.

5
ghazal

JS kitaplığının bileşeninizle birlikte yüklenmesini sağlamak için, bileşeni bileşeninizin görünümüne eklemeniz gerekir. View.html.php dosyasında veya şablon dosyasında böyle bir şey çalışmalıdır:

JHtml::_('jquery.framework');

Bunun, noConflict Modunda jQuery içereceğini unutmayın. Ayrıca çerçevenin yalnızca bir kez yüklenmesini sağlar.

JQuery'yi Normal modda yüklemek için şunu kullanın:

JHtml::_('jquery.framework', false);

Güncelleme:

Js bileşeninizin bileşeninizin görünüm bölümüne yüklenmesini istiyorsunuz, bu yüzden onu ekleyeceğiniz yer burası. Bu nedenle, gerekli çerçeveleri ekledikten sonra, görünüme başka js ve css de eklersiniz.

Buna eklemek için ve bir şeyleri nasıl yapmak istediğinize bağlı olarak veya başka bir neden varsa, kendi sınıfınız ve yöntemlerinizle bir yardımcı dosya oluşturabilirsiniz, çağrıda js/css dosyalarının eklenmesine karar verir, her duruma göre. Ayrıca medya klasörünü js/css'nizin konumu olarak kullanmayı da düşünebilirsiniz.

<?php $doc = JFactory::getDocument();
$doc->addScript(JURI::root(true).'/media/com_component/js/myscript.js');
?>


Joomla: JS Ekleme - Belgeler

1
FFrewin