Задать вопрос

Как вывести модуль Joomla посредством javascript?

Задача — выводить нужный модуль в контенте главной страницы, в зависимости от разрешения монитора на клиенте.

Решение задачи, как я её вижу, по пунктам:
В html коде шаблона вставляем код
<?php
// если находимся на главной, добавляем стандартными средствами joomla код javascript

	$menuha = & JSite::getMenu();
	if ($menuha->getActive() == $menuha->getDefault()) {
		$document = & JFactory::getDocument();
                $document->addScript('/media/system/js/vin.js');
	}
?> 


в теле материала в нужном месте добавляем строчку, в которую посредством скрипта будем вставлять модуль
<p id="vin"> </p>


код javascript (vin.js'):
setTimeout(function(){
	var vin = document.getElementById("vin");
	if (screen.width > 1152) {
	//	vin.innerHTML = "{loadposition Vinaora}"; - к сожалению оба способа 
        //      vin.innerHTML = " {module Vinaora}"; - вставки модуля тут не работают
	} else {
		//	vin.innerHTML = "{loadposition Vinaora2}"; - к сожалению оба способа 
              //        vin.innerHTML = " {module Vinaora2}"; - вставки модуля тут не работают
	}
}, 1200);


Прошу больно не пинать, понятно что гораздо правильнее допилить модуль, чтоб он приспосабливался к разным разрешениям, но хочется уже разобраться в этом вопросе для себя.

Ajax способ не подходит, вследствии того что по сути нужно вызывать один и тот же модуль с разными настройками.
аякс способ:
$(document).ready(function() {
$('#vin').load('ПУТЬ_К_ФАЙЛУ/mod_vt_nivo_slider.php');
});
  • Вопрос задан
  • 4926 просмотров
Подписаться 7 Оценить 1 комментарий
Ответ пользователя sogologo К ответам на вопрос (3)
sogologo
@sogologo
можно вопрос ) а зачем именно js выводить? просто это абсолютно не обязательно для вашего решения
Ответ написан