s7ranger

Некорректное отображение баннера

Рекомендуемые сообщения

s7ranger    62

Всем добрый день. Не нашёл решение моей проблемы на форуме, зато нашёл в другом месте и решил им поделиться с вами. В общем модераторы не пинайте сильно, а лучше перенесите тему в нужный раздел.

Установлен движок ocstore_v1.5.3.1. Возник вопрос как исправить некорректное отображение баннера.

Суть проблемы в следующем - когда ставлю баннер на сайт (не слайдшоу,а именно баннер), то при открытии страницы баннер сначала раскладывается на несколько изображений (в зависимости от того сколько их всего в баннере), а только потом собирается в один блок и начинает перелистывать изображения. Выглядело это примерно вот так

post-8677-0-88063500-1345895472_thumb.jpg

Решение этой проблемы.

Идём в www-ваш сайт-catalog-view-theme-ваша тема-template-module и находим там файл banner.tpl

Заменям код

<div id="banner<?php echo $module; ?>" class="banner">
  <?php foreach ($banners as $banner) { ?>
  <?php if ($banner['link']) { ?>
  <div><a href="<?php echo $banner['link']; ?>"><img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" title="<?php echo $banner['title']; ?>" /></a></div>
  <?php } else { ?>
  <div><img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" title="<?php echo $banner['title']; ?>" /></div>
  <?php } ?>
  <?php } ?>
</div>
<script type="text/javascript"><!--
$(document).ready(function() {
	$('#banner<?php echo $module; ?> div:first-child').css('display', 'block');
});

var banner = function() {
	$('#banner<?php echo $module; ?>').cycle({
		before: function(current, next) {
			$(next).parent().height($(next).outerHeight());
		}
	});
}

setTimeout(banner, 2000);
//--></script>
на

<div id="banner<?php echo $module; ?>" class="banner">
  <?php foreach ($banners as $banner) { ?>
  <?php if ($banner['link']) { ?>
  <div><a href="<?php echo $banner['link']; ?>"><img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" title="<?php echo $banner['title']; ?>" /></a></div>
  <?php } else { ?>
  <div><img src="<?php echo $banner['image']; ?>" alt="<?php echo $banner['title']; ?>" title="<?php echo $banner['title']; ?>" /></div>
  <?php } ?>
  <?php } ?>
</div>
<script type="text/javascript"><!--
$(document).ready(function() {
$('#banner<?php echo $module; ?>').cycle({
  before: function(current, next) {
   $(next).parent().height($(next).outerHeight());
  }
});
});
//--></script>

Надеюсь, это кому-нибудь поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
YaSe    23

баннер сначала раскладывается на несколько изображений (в зависимости от того сколько их всего в баннере)

В css родительскому блоку задаете жесткие ширину и высоту и overflow:hidden

И пусть он хоть сто картинок сразу выводит, увидите только первую

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу