Jump to content
  • 0

Поочерёдная смена бэкграунда


Trust
 Share

Question

20 answers to this question

Recommended Posts

  • 0

Что значит поочередно? Если на каждой следующей странице (или при перезагрузке страницы) должен быть другой фон, то можно на php. А если фон должен меняться на открытой странице, то тогда javascript.

Edited by Veseloff
Link to comment
Share on other sites

  • 0

На открытой.

Смотрите, у меня есть шаблон, по которому выводятся товары списком:

Товар1 (bg1) шаблон1

Товар2 (bg2) шаблон1

Товар3 (bg1) шаблон1

Товар4 (bg1) шаблон1

Как на схеме. Два шаблона создать нет возможности, поэтому нужно искать иное решение. java, конечно, не очень бы хотелось:unsure:

Edited by Trust
Link to comment
Share on other sites

  • 0

Ну на php считаем какая строчка по счёту и присваиваем ей свой класс (стиль) в зависимости от того, четное это число или нет. Вообще не вижу никакой проблемы

Link to comment
Share on other sites

  • 0

Veseloff, оо спасибо огромное. Правда есть маленькая проблема... я в php не разбираюсь абсолютно и сейчас не самое подходящее время, чтобы начать:unsure:

Можете помочь? И главное, как встроить код в html файл?

Edited by Trust
Link to comment
Share on other sites

  • 0

Int, мм... посмотрите пожалуйста, с кавычками не выходит.

<?php
for ($line=1;$line<=10;$line++)
if ($line % 2) echo '
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="browseProductContainer">
<tr>
<td width="10%" style="text-align:center;" id="q">
<center><div class="browseProductImageContainer">
<script type="text/javascript">//<![CDATA[
document.write('<a href="java script:void window.open(\'<?php echo $product_full_image ?>\', \'win2\', \'status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,wid
th=<?php echo $full_image_width ?>,height=<?php echo $full_image_height ?>,directories=no,location=no\');">');
document.write( '<?php echo ps_product::image_tag( $product_thumb_image, 'class="browseProductImage" align="center" style="border: 1px solid #cccccc; display:inline; margin-right:1px; padding: 1px" title="'.$product_name.'" alt="'.$product_name .'"' ) ?></a>' );
//]]>
</script>
<noscript>
<a href="<?php echo $product_full_image ?>" target="_blank" title="<?php echo $product_name ?>">
<?php echo ps_product::image_tag( $product_thumb_image, 'class="browseProductImage" border="0" title="'.$product_name.'" alt="'.$product_name .'"' ) ?>
</a>
</noscript>
</div></center>
</td>
<td id="q" width="35%">
<h3 class="browseProductTitle" style="margin: 0pt; padding: 0pt; font-size: 11px;">
<a style="color:#797979; font-weight:lighter !important; text-decoration:none;" title="<?php echo $product_name ?>" href="<?php echo $product_flypage ?>">
<?php echo $product_name ?></a>
</h3>
</td>
<td id="q" width="15%">
<div class="browsePriceContainer">
<?php echo $product_price ?>
</div>
</td>
<td id="q" width="40%">
<span class="browseAddToCartContainer">
<?php echo $form_addtocart ?>
</span>
</td>
</tr>
</table>
';
else echo 'чётная строка<br>';
?>

Link to comment
Share on other sites

  • 0

Вот так должно работать:

<?php
for ($line=1;$line<=10;$line++)
if ($line % 2) echo '
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="browseProductContainer">
<tr>
<td width="10%" style="text-align:center;" id="q">
<center><div class="browseProductImageContainer">
<script type="text/javascript">//<![CDATA[
document.write(\'<a href="java script:void window.open(\'<?php echo $product_full_image ?>\', \'win2\', \'status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,wid
th=<?php echo $full_image_width ?>,height=<?php echo $full_image_height ?>,directories=no,location=no\');">\');
document.write(\'<?php echo ps_product::image_tag( $product_thumb_image, \'class="browseProductImage" align="center" style="border: 1px solid #cccccc; display:inline; margin-right:1px; padding: 1px" title="'.$product_name.'" alt="'.$product_name .'"\' ) ?></a>\' );
//]]>
</script>
<noscript>
<a href="<?php echo $product_full_image ?>" target="_blank" title="<?php echo $product_name ?>">
<?php echo ps_product::image_tag( $product_thumb_image, \'class="browseProductImage" border="0" title="'.$product_name.'" alt="'.$product_name .'"\' ) ?>
</a>
</noscript>
</div></center>
</td>
<td id="q" width="35%">
<h3 class="browseProductTitle" style="margin: 0pt; padding: 0pt; font-size: 11px;">
<a style="color:#797979; font-weight:lighter !important; text-decoration:none;" title="<?php echo $product_name ?>" href="<?php echo $product_flypage ?>">
<?php echo $product_name ?></a>
</h3>
</td>
<td id="q" width="15%">
<div class="browsePriceContainer">
<?php echo $product_price ?>
</div>
</td>
<td id="q" width="40%">
<span class="browseAddToCartContainer">
<?php echo $form_addtocart ?>
</span>
</td>
</tr>
</table>';
else echo 'чётная строка<br>';
?>

Link to comment
Share on other sites

  • 0

Ну зачем же целую таблицу-то в эхо пихать? о_О Я ж просто пример привёл

<table>
<?
for ($line=1;$line<=10;$line++)
{
if ($line % 2) $class='line1';
else $class='line2';?>
<tr class="<?=$class;?>"><td>Тут данные</td><td>И тут</td></tr>
<?}?>
</table>

Не забудьте сделать классы

tr.line1 td
{
background-color:#EEE;
}
tr.line2 td
{
background-color:#FDD;
}

Цвета, само собой, условные

У меня работает, вот:

http://pic.rapidshare.ru/1079032

//Кстати, зачем так делать? <td width="10%" style="text-align:center;" id="q"><center><div class="browseProductImageContainer">

<center> тут явно лишний. Да ещё и старевший, как я узнал :unsure:

Edited by Int
Link to comment
Share on other sites

  • 0

Int, да, спасибо, что сказали:unsure: Просто нужо было быстро накидать, чтобы работало, а облизывать уже позже буду.

Смотрите, как получилось:angry:))

http://www.askpaint.ru/shop?page=shop.brow...p;category_id=1

Edited by Trust
Link to comment
Share on other sites

  • 0

Trust, это ж полный бред! Что за бардак! Вы наобум программируете?

Начнем с id. Вы понимаете смысл этого параметра?! Не может быть элементов с одинаковым id на одной странице больше одного! А потом какой бы фон вы не задавали в классе строкам, будет работать фон ячеек, который одинаквый по идентификатору вы сами же присваеваете всем ячейкам.

стиль идентификатора "q" перенесите в класс

Edited by Searcher
Link to comment
Share on other sites

  • 0

Searcher, я выше писал. Всё на скорую руку делал, можно сказать, наобум.

Проблема в том, что товары выводятся по 10 раз каждый (сейчас поvенял с 10 на 2). Если поставить 1, то чередования цветов не будет.

<table>
<?
for ($line=1;$line<=2;$line++)
{
if ($line % 2) $class='line1';
else $class='line2';?>
<tr class="<?=$class;?>">

<td width="10%" style="text-align:center;" id="q">
<center><div class="browseProductImageContainer">
<script type="text/javascript">//<![CDATA[
document.write('<a href="java script:void window.open(\'<?php echo $product_full_image ?>\', \'win2\', \'status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,wid
th=<?php echo $full_image_width ?>,height=<?php echo $full_image_height ?>,directories=no,location=no\');">');
document.write( '<?php echo ps_product::image_tag( $product_thumb_image, 'class="browseProductImage" align="center" style="border: 1px solid #cccccc; display:inline; margin-right:1px; padding: 1px" title="'.$product_name.'" alt="'.$product_name .'"' ) ?></a>' );
//]]>
</script>
<noscript>
<a href="<?php echo $product_full_image ?>" target="_blank" title="<?php echo $product_name ?>">
<?php echo ps_product::image_tag( $product_thumb_image, 'class="browseProductImage" border="0" title="'.$product_name.'" alt="'.$product_name .'"' ) ?>
</a>
</noscript>
</div></center>
</td>
<td width="35%">
<h3 class="browseProductTitle" style="margin:0 0 0 10px; display:inline; padding: 0pt; font-size: 11px;">
<a style="color:#797979; font-weight:lighter !important; text-decoration:none;" title="<?php echo $product_name ?>" href="<?php echo $product_flypage ?>">
<?php echo $product_name ?></a>
</h3>
</td>
<td width="15%">
<div class="browsePriceContainer">
<?php echo $product_price ?>
</div>
</td>
<td width="40%">
<span class="browseAddToCartContainer">
<?php echo $form_addtocart ?>
</span>
</td></tr>
<?}?>
</table>

Edited by Trust
Link to comment
Share on other sites

  • 0

Писать программу наобум - это полный бред! Вы вообще понимаете что такое цикл? Прочтите ка внимательно описание. Товары у вас выводятся по 10 раз один и тот же поскольку переменные $product_name и т.п. в цикле не обновляются. В цикле надо присваивать новые значения этим переменным.

И уберите в конце концов id="q"! Сделайте это классом.

А вообще советую дать это людям, которые больше понимают в веб-программировании. Будет быстро и не дорого. А так провозитесь долго и все равно будут глюки.

Link to comment
Share on other sites

  • 0

Для понимания циклов не нужно знать php, достаточно понимать логику программирования, а какими словами это описано - без разницы. Еслы вы знакомы с логикой языков программирования, в школе даже изучают основы, то достаточно прочитать информацию по ссылке, которую я вам дал и вы все сможете сделать сами. Но я вижу, что вы с программированием совсем не знакомы поскольку самые примитивные проблемы вы не в состоянии даже осознать. Получив решение одной проблемы вы натыкаетесь на другие и это будет расти лавинообразно. На форуме за вас бесплатно никто не будет выполнять весь комплекс задач.

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

Вывод простой. Распишите вашу задачу в разделе "Вакансии и разовые заказы".

Link to comment
Share on other sites

  • 0
  Searcher said:
Почему-то многие не программисты думают, что веб-программирование - это все фигня и легко осваивается. Вы глубоко заблуждаетесь. Это серьезная профессиональная работа и веб-программистом становятся после не одного года упорного труда, освоения теории и решения множества практических задач.

Полностью согласен

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy