JTRTA

JTRTA
Рейтинг
25
Регистрация
06.07.2008

Работали с ТС в выполнении срочного заказа. Была сверстана кросс-браузерная страница, с учётом многих требований заказчика. Работой довольны. Удачи ТС.

Dreammaker:

где-то из-за такого и навешивались по нескольку раз события. Или я же что-то не понимаю.

На самом деле не из-за этого, а из-за того что ваша функция каждый раз добавляла обработчик событий всем ссылкам поределеннного класса, добавление обработчиков на document.redy можно использовать так как он вывозиться 1 раз и нужно если первый набор ссылок генерится не js а php, если же все делается ajaxom то нафиг ее :) оставить только добавление обработчика при добавлении нового узла

Вот этот вариант довольно интересен я о нём не подумал, точнее думал, но сходу не мог придумать как получать id новодобавленного элемента.

в таком случае id не нужен т.е. можно так:

$(someNewNode).appendTo(dest).handleDeleteImage2();

По моему стоит пересмотреть организацию самого процесса загрузки изображения.

Если загружая новое изображения вы добавляете в документ новый узел, то у него не может быть какого-либо обработчика и не должно возникнуть конфликтов если добавлять событие только вновь добавленному узлу.

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

Дальше если используете Jquery может изящней будет сделать так:

$.fn.handleDeleteImage2 = function(){

this.each(function(){
this.click(function(){
alert('123');
});
});
};

и затем в программе вызывать только для нужных элементов что то вроде:

$(document).ready(function(){

$("a.ajaxtest").handleDeleteImage2();
}

или когда добавляете новый узел

$(someNewNode).handleDeleteImage2();

1.Перегрузки функций в пхп5 точно нет:( надо ручками проверять количество введенных параметров и выполнять разный код.

2. если вы хотите кодом:

$a = intval(trim($_GET['a']));

изменить атрибут "a" для класса надо писать $this->a = intval(trim($_GET['a'])); так как в вашем случае вы просто создали переменную $a локальную для функции

давайте пример в личку с глюками ие уже не один год боремся:)

Хаков желательно все же избегать, к тому же зачем серверу выполнять линий код(обе функции вызовутся в независимости от браузера) когда можно средствами пхп определить браузер:

//вначале скрипта добавляем:

function get_browser_($user_agent,$browsers)

{

foreach($browsers as $browser=>$pattern)

{

if (eregi($pattern, $user_agent))

return $browser;

}

return 'other';

}

$browsers = array(

'ie7' => '(MSIE 7\.[0-9]+)',

'ie6' => '(MSIE 6\.[0-9]+)',

'ie5' => '(MSIE 5\.[0-9]+)'

);

define('__browser',get_browser_($_SERVER['HTTP_USER_AGENT'],$browsers));

ну и дальше что то типа такого:

if(__browser=='other') bp_add_friend_button(); else bp_add_friend_button2();

А нет возможности в действии скрипт посмотреть? чтоб дебагером прогнать все проще ошибки находить

С удовольствием возьмемся за создание сайта.

Сделаем примерно за 12000р - 15000р.

Разработаем интерфейс редактирования сайта специально для вас, чтобы не требовалось знания CMS и html.

Гарантируем защиту от различных видов взлома.

При необходимости оптимизируем скорость работы сайта.

Установим сайт на хостинг.

Примеры работ: www.aiogino.ru

ICQ: 460146806

или e-mail: aiogino.studio@gmail.com

да хватит уже ! тема закрыта!и бахать репу без оснований это детство, обидели надо же

спасибо за обоснованный и дельный совет

Всего: 228