Не работает .click()
Здравствуйте! Столкнулся спроблемой: создав js'ом некий div, не могу обработать далее нажатие на этот созданый див.
$(document).ready(function(){
var ln; var text;
$("#changed").click(function () {
$(this).hide();
$("<div class='hz' id='pole'></div>").prependTo($("#body")); //вот создание того дива
$("<input type='text' id='save1' class='save1'>").prependTo($(this).parent()).focus();
});
$("#pole").click(alert("Любой текст"));
});
В таком варианте код
$("#pole").click(alert("Любой текст"));
обрабатывается почему-то сразу при загрузке страницы, даже когда объект #pole ещё не был создан.Так же я пробовал использовать .live(), но ничего не вышло, это выглядело примерно так:
$('#pole').live("click".poleclose(););
function poleslose(){
alert("Любой текст");
}
и мой JS код переставал работать вообще. Так вот: как нормально обработать событие click для созданного дива с id='pole' ?? |
Jest,
Нарисуйте Ваш код полностью, вместе с HTML отобразите элементы: #changed #body И как Вы определяете - что кликаете по элементу #pole Он у Вас никак не выделен(*по крайней мере в выложееном коде |
<body id='body'> <table width="70%" height="100%" align="center" border="0"> <tr class="top_block"> <td colspan="2"> <div class="top_bg"><div><span class="big" id="changed">Название сайта</span>И т.д.... Суть в том, чтобы при нажатии на надпись (#changed) появлялся div (#pole), а заместо надписи, на которую нажали, появляется текстовое поле, с этой надписью. Суть div'a #pole в том, чтобы залить весь документ, позади появившегося текстового поля, полупрозрачно-белым цветом. Если надо, вот стиль того дива:
div.hz{
background-color: rgba(255,255,255,0.7);
position: absolute;
top: -10%;
left: -10%;
height: 110%;
width: 110%;
z-index: 1;
}
Это всё реализовать мне удалось, но я хочу чтобы при нажатии в любую точку за пределами текстового поля (т.е. при нажатии на div #pole) div #pole изчезал, текстовое поле тоже исчезало, и на его месте появлялся текст (на который надо было нажать сначала #changed), но уже изменённый. Вот как-то так) |
Спасибо за помощь :) Проблему, кстати, решил.
|
| Часовой пояс GMT +3, время: 15:39. |