Есть блок где выводится три материала — заголовок и фото. Выполнен он HTML + CSS + JS.
Картинка отображается той новости, на которую последней была наведена мышь. Но контент приходится добавлять вручную в код. Как можно это дело прикрутить к модулю "Последние материалы"?
Я сделал следующее:
1. Файл mod_latest.tpl
<div class="blok_news">
<div class="blok_news_shapka">
<div class="title_blok_news">
Последние новости
</div>
<a class="blok_news_knopka" title="Все новости" href="/news/">Все новости</a>
</div>
<div id="news" class="events">
{if $is_con}
{if $cfg.is_pag}{/if}
{if !$is_ajax}<div id="module_ajax_{$module_id}">{/if}
{foreach key=aid item
=article from
=$articles} <a id="news_1" title="{$article.comments|spellcount:$LANG.COMMENT1:$LANG.COMMENT2:$LANG.COMMENT10}" href="{$article.href}" style="display: block;">
<img width="179" height="161" alt="{$article.title}" src="/images/photos/small/{$article.image}">
</a>
{/foreach}
{if !$is_ajax}</div>{/if}
{else}
<p>{$LANG.LATEST_NOT_MATERIAL}</p>
{/if}
{if $is_con}
{if $cfg.is_pag}{/if}
{if !$is_ajax}<div id="module_ajax_{$module_id}">{/if}
{foreach key=aid item
=article from
=$articles} <h3>
<a onmouseover="display_news(1)" title="{$article.comments|spellcount:$LANG.COMMENT1:$LANG.COMMENT2:$LANG.COMMENT10}" href="{$article.href}">{$article.title}</a>
</h3>
{/foreach}
{if !$is_ajax}</div>{/if}
{else}
<p>{$LANG.LATEST_NOT_MATERIAL}</p>
{/if}
</div>
</div>
2. В template.php добавил следущий код:
function display_news (i){
for (k=1;k<4;k++) document.getElementById('news_'+k).style.display = "none";
document.getElementById('news_'+i).style.display = "block";
}
Но как сделать, чтобы в каждом новом цикле фореча изменялись по возрастающей id="news_1" и onmouseover="display_news(1)" у меня тямы не хватает. Да и как сделать, чтобы первые два цикла ставился style="display: none; а третий цикл style="display: block; тоже не соображу.
А может я и вовсе по неправильному пути пошел… в общем не судите строго, я только учусь.
Ниже прикреплен имеющийся рабочий скрипт, от которого я отталкиваюсь.