powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / (JS) DOM JQuery не могу отобразить элемент
11 сообщений из 11, страница 1 из 1
(JS) DOM JQuery не могу отобразить элемент
    #36066909
eualexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброй ночи!
Помогите пожалуйста, есть функция
Код: plaintext
1.
2.
function subShowRegistration(){
	$('#center').attr("align", "center");
        $('#registration_form').fadeIn("slow");}
от неё ожилается что она в указанном элементе
1) выравнивает все содерижмое по центру - это она делает
2) медленно показывает содежимое элемента - это она НЕ делает, негодница!
Все это надо делать за один проход, бес промежуточных тыканий кнопкой мыши куда либо.
Если сделать вот так
Код: plaintext
1.
2.
3.
function subShowRegistration(){
	$('#center').attr("align", "center");}
function showME(){
        $('#registration_form').fadeIn("slow");}
то все работает, но для этого надо showME кудато назначать, если её вложить в функцию subShowRegistration то содержимое не появляется.
Я в печали.
Спасибо!
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36066945
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Видимо, из-за того, что тэг form можно с напрягом назвать контейнером.
Советую сделать контейнер для формы, вот его и затухать. Допвызов функции не нужен - делай как в первом варианте.

З.Ы. Для контейнера даже не надо указывать имя или ид - просто как родитель формы.
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36066958
eualexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruck,

а вот с этим live мне кажется можно. только уже кучу вариантов перепробывал пока что не вышло
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36066960
eualexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruckВидимо, из-за того, что тэг form можно с напрягом назвать контейнером.


тег форм представляет собой таблицу которая вложена в div с id=registration_form
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36066992
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Странноватое просто имя для дива ...

Думаю, надо предоставить больше кода, потому что в том, что есть, проблем нет. И если див уже есть, то live ему не нужен (его вообще тут не к чему приткнуть).
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36067027
eualexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruck,
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<div id='registration_form' style="display:none">
<table>
	<tr><td><p>Ваше имя:</p></td><td><input type='text' size='".$size."' value='' name='firstname' /><td><tr>
	<tr><td><p>Логин для входа:</p></td><td><input type='text' size='".$size."' value='' name='user' /><td><tr>
	......ВСЕ ПОЛЯ НЕ СТАЛ ПЕРЕЧИСЛЯТЬ ИБО ОНИ ОДНОТИПНЫЕ	
	<input type='submit' value='Зарегистрировать' /></td></tr>
</table>
</div>
Содержимое загружается на страницу и там должно плавно появиться, вот одновременно загрузка и появление не получаются, а именно появление.
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36068199
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ага, уже проясняется ... хотя важнее код загрузки.

1. Загружаем (думаю, через функцию ajax или ей подобную), в обработчике success добавляем содержимое в контейнер registration_form - так?
2. Делаем стилевое размещение.
3. Плавно отображаем.

Так как кода по-прежнему мало, то могу сделать только предположения ... Стиль display:none где-то меняется на block или inline? Ведь "none - Object is not rendered", отсюда могут быть проблемы. Так что лучше не пользоваться стилем display, а изначально показывать контейнер с нулевой прозрачностью, а потом плавно отображать.

Тут у тебя тоже будут проблемы, так как плавное изменение прозрачности текстовых элементов отменяет сглаженность шрифтов - выглядит препаскуднише (по крайней мере в ИЕ). Поэтому совет - контейнер не скрывать вовсе, а иметь слой над ним, который по умолчанию белый (бек), а когда нужно показать контейнер, становится прозрачным.
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36068743
eualexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruck,

Вот к чему пришел и не работает
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
<style type="text/css">
div#registration_form{
padding: 10px;
margin: 0  auto;
width:350px;
background:#E6E6E6;
color:#000FFF;
}
div#registration_form_folder{
padding: 10px;
width:350px;
background:#FFFFFF;
 opacity: 0 . 5 ;
filter:alpha(opacity= 50 );
}
</style>
<div id='registration_form_folder'>
<div id='registration_form'>
	<table>
		<tr><td><p>Ваше имя:</p></td><td><input type='text' size='".$size."' value='' name='firstname' /><td><tr>
......
		<input type='submit' value='Зарегистрировать' /></td></tr>
	</table>
</div>
</div>
а это скрипт которые обрабатываю
Код: plaintext
1.
2.
3.
4.
5.
function showRegistration(oldblock, newblock){
	getData(oldblock, newblock);                  //Получил новое содержимое
	$('#center').attr("align", "center");         //выровнял по центру
	$('registration_form_folder').fadeOut("Slow");//делаю прозрачной обертку
	Nifty("div#registration_form","big");//закгруглил углы
}
В результате "прозрачной обертка не делается" и "углы не загругляются", хотя если вынести закругление отдельно в функцию и повесить как onclick на какую нибудь кнопку то она страбатывает
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36069129
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Говорили-балакали, сіли та й заплакали ...
Разве есть стандартная функция getData? Все показываешь, а главное снова пропустил. Все второстепенное показываешь ... Где заковыка - знаю, только эту функцию покажи.
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36069152
eualexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruck,

Даю getData!!!!!!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
function getData(id, url){
	cc(id);
	url=url+".php";
	ajax.open("POST", url, true);
	ajax.onreadystatechange = function() {
		if (ajax.readyState ==  4  && ajax.status ==  200 )
		{
	 		var data = ajax.responseText
	 		document.getElementById(id).innerHTML=data;
	 	}
	}
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.send(null);
}
в ней есть cc
Код: plaintext
1.
2.
3.
function cc (id){
	while (document.getElementById(id).childNodes.length> 0 ){
		var whatRemove = document.getElementById(id).childNodes[ 0 ];
		document.getElementById(id).removeChild(whatRemove);}}
Код: plaintext
ajax = new XMLHttpRequest();
Тут без всяких jquery, мануал по которой в настоящее время активно куриться
...
Рейтинг: 0 / 0
(JS) DOM JQuery не могу отобразить элемент
    #36070428
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О! Спасибо :). Ошибка, как и предполагалось, чайниковская, пришедшая из глубин десктопных языков программирования:
Код: plaintext
1.
2.
3.
4.
5.
function showRegistration(oldblock, newblock){
( 1 )	getData(oldblock, newblock);
( 2 )	$('#center').attr("align", "center");
( 3 )	$('registration_form_folder').fadeOut("Slow");
( 4 )	Nifty("div#registration_form","big");
}
По логике, ты думаешь, что сначала выполняется функция (1), отправка и получения контента, потом возвращается ответ и выполняются далее функции (2), (3), (4). Хочу тебя разочаровать: первыми "покинут" функцию showRegistration строки (2) и (4), так как язык - скриптовый, код не ждет выполняния запросов, таймеров и т.д. А так как строки (2),(3) и (4) не ждут получения контента, то работа в них с элементами, которых еще нет, невозможна.

Советую пойти по такому пути:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
function showRegistration(oldblock, newblock) {
	$.ajax(beforeSend:function(){cc(oldblock)}, type:"POST", url:newblock+".php", success:function(data){
		$("#" + oldblock).html(data);
		$('#center').attr("align", "center");
		$('registration_form_folder').fadeOut("Slow", function(){
			Nifty("#registration_form","big");
		};
	});
}
Типа такого, только еще обработчик ошибок можно добавить.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / (JS) DOM JQuery не могу отобразить элемент
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]