измененя ид атрибута
здравствуите
не буду говорить много, просто скажу что если нажму на кнопка1, а потом нажму на кнопка2, то алерт все ровно происходит, обясните плиз почему? P.S. фаирбаге смотрю и ид изменяется успешно вот код: $(document).ready( function () { $("#knopka1").bind("click", function () { $(".my_class").attr({ id: "blablabla" }) }) ; $("#knopka2").bind("click", function () { alert("chto-to"); }); }) ; Код:
<div id="knopka1">knopka1</div> |
ну потому что вы меняете айди, но привязка к событию остаётся. используйте либо метод off() jquery, либо удаляйте элемент и создавайте новый, либо вообще откажитесь от изменения айди — это неправильно.
|
<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script> <div id="knopka1">knopka1</div> <div id="knopka2" class="my_class">knopka2</div> <script type="text/javascript"> $(document).ready(function(){ $("#knopka1").bind("click", function () { alert("Алерт Первоклик, заработает Вторая"); $(".my_class").attr("id","blablabla"); $("#knopka1").unbind('click') //Убираем событие для Первой Кнопки }) ; $("#blablabla").live("click", function () { alert("Вторая Кнопка"); }); }); </script> |
Поставте онклик на див и всё :)
|
ок, вот так задам вам вопрос
есть див елемент, как сделать такое: при клике на него, уничтожит её интерактивность 3 секунду, а потом автоматически вернуть её интеркативность. ето можно например через другого дива да, то есть на клике, другои див появляется на верх первого дива и через 3 секунд верхни див удаляется, но интересно нет в js, jquery такои метод, что интерактивность елемента автоматически блокировать - снимать блокировку. |
dadli,
Ой выложите примерный код (А то тут мне срочно необходимо переставить инжектор селектора супозитория с аналогового ввода структуры на внешнюю оболочку ) |
$("#my_element").bind("click", function () { // здес сделаем my_element не интерактивним, (то есть он не будит отвечат на слдуших кликах) setTimeout ( function () { // и нажначим taimer так, что после 3 секунда интерактивность елемента вернулос }, 3000); }); |
function ReturnClick() { $("#my_element").bind("click", function () { alert("Возаврат Кликабельности") }); } $("#my_element").bind("click", function () { alert("ПервоКлик и затык 3 сек") // здесь сделаем элемента не интерактивным, (то есть он не отвечает на клики) $("#my_element").unbind('click') setTimeout (ReturnClick(), 3000); }); |
спасибо :)
|
Часовой пояс GMT +3, время: 00:19. |