PDA

Просмотр полной версии : При парсинге ошибка


DeaD_MoroZ
16.11.2009, 16:50
Проблемма в следующем: если запускать скрипт просто открывая его в браузере, он работает, но если его вставить в страницу на сайт-сразу же проблеммы с компилятором. Не могли бы вы его посмотреть, и повозможности подсказать что нужно изменить???
http://slil.ru/28210718

Martyr
16.11.2009, 17:25
Напиши какие конкретно у тебя ошибки, я увидел только несколько:там просто нужно поставить ; на 73,75,77 и 79 строчке перед onmouseout.Кстати у меня скрипт везде нормально работал.

DeaD_MoroZ
16.11.2009, 18:30
ругается полностью на всё в <script></script>(хотя ещё и не очень хороший компилятор использую-Smarty)

Martyr
16.11.2009, 19:39
Просто нужно запретить Smarty эту секцию для парсинга.Проблема появляется из-за того, что яваскрипт и CSS используют символы { и } в качестве разделителей, которые так же используются в качестве разделителей для Smarty.
Решить это можно просто изменив свойства $left_delimiter и $right_delimiter в объекте Smarty.
<?php
$smarty->left_delimiter = '<!--{';
$smarty->right_delimiter = '}-->';
$smarty->assign('foo', 'bar');
$smarty->assign('name', 'Albert');
$smarty->display('example.tpl');
?>

Где темплейт,например такой:
Welcome <!--{$name}--> to Smarty
<script language="javascript">
var foo = <!--{$foo}-->;
function dosomething()
{
alert("foo is " + foo); }
dosomething(); </script>

DeaD_MoroZ
17.11.2009, 04:45
Спасибо за подсказку, помогло, но не совсем. Теперь не срабатывают события onmouse****.