как проверить скрыт/отображается объект?
jQuery.fn.toggle = function(){
this.each(function(){
var me = jQuery(this);
me.prepend(
jQuery('<span>↑ </span><span class="error">Ошибка: </span>')
);
me.css('cursor', 'pointer').bind('click', function(e){
//alert(me.attr('idd'));
var p13_lh14 = $('div.p13_lh14:has(textarea#'+me.attr('idd')+')');
p13_lh14.slideToggle('fast', function(){
if($(p13_lh14+':hidden')){
me.find('span:first').html('<span>↓ </span>');
}else{
me.find('span:first').html('<span>↑ </span>');
}
});
});
});
return false;
}
$(document).ready(function(){
$('textarea').resizer();
$('h1').toggle();
$('h1 span.error').hide();
});
вот тут участок с if - как правильно его сделать? если такое, или приписывать скрытому блоку какойнить атрибут и потом по нему проверять? |
function noviewinput (id)
{
$("#"+id).css({display: ""});
$("#in"+id).css({display: "none"});
}
а если так скрывать? при анимации моно прозрачность в 0 свести и тоже будет скрыт. |
ну конено в переменную вносить скрыт или открыт.
или смотреть что в дисплей стоит. |
SDone,
просто делаю все в одной функции, смысл еще одни функции делать? или это для примера? не совсем понял зачем "#in"+id...пока, решил так:
h1.bind('click', function(){
p13_lh14.slideToggle('fast', function(){
if(p13_lh14.data('show')){
p13_lh14.data('show', 0);
h1.find('span:first').html('<span>↓ </span>');
}else{
p13_lh14.data('show', 1);
h1.find('span:first').html('<span>↑ </span>');
}
});
});
в js это нормально или лучше по другому? |
"#in"+id - да это просто пример. показать как с див работать.
если пашет так то че и менять? Иногда не до красоты. :victory: |
Цитата:
if( p13_lh14.style.display == 'none' ) ... (если оно изменяется в процессе) |
"По-джикверевски" :) наверное так:
$('#myid').is(':hidden')
Вот это: if($(p13_lh14+':hidden'))работать будет всегда, даже если не найдется элемент -- jquery ведь возвращает объект, даже если ничего не нашло, а проверить, попалось ли что-то, можно через метод size:
if($(p13_lh14+':hidden').size()){...}
|
SDone,
x-yuri, e1f, Благодарю! Классно, вчера весь день колопатил мануалы и 0 результат ) Сегодня прям прорыв - уже начинается нравится js, который до этого обходил стороной ))
if($(p13_lh14+':hidden').size()){...}
а в смысле? ...зачем и что проверять? |
if($(p13_lh14+':hidden')) а почему у меня не работает? Объект всегда возвращается, потому всегда true будет. Am I wrong? и непонятно, что такое p13_lh14+':hidden'... в p13_lh14 должно быть '#myid'?
if($(p13_lh14+':hidden').size()){...}
проверка отображается ли элемент... в p13_lh14 должно быть '#myid' как я понял, ну т.е. можно так
if($('#myid:hidden').size()){...}
|
Цитата:
var p13_lh14 = $(this).find('div.p13_lh14');
|
| Часовой пояс GMT +3, время: 14:16. |