Направете един div видим и друг невидим

Имам два div тага, единият е за търсенето, а другият е за резултатите. Това, от което се нуждая, е когато се щракне върху бутона за изпращане, резултатите се връщат и поставят в div с резултати (с iframe) и div за търсене трябва да стане скрит и div с резултати трябва да стане видим.

search div първоначално е настроен на visible (използвайки visibility на visible), а div на резултатите първоначално е настроен на hidden (използвайки visibility на hidden).

Също така, първоначално има огромно бяло пространство в долната част на страницата, където е скрития div, така че как да се уверя, че няма допълнително бяло пространство в долната част.


person mattgcon    schedule 03.11.2010    source източник


Отговори (4)


Правенето му невидимо с видимост все пак го кара да използва място. По-скоро опитайте да зададете дисплея на нищо, за да го направите невидим, и след това задайте дисплея да блокира, за да стане видим.

person My Other Me    schedule 03.11.2010
comment
Поправете ме, ако греша, но с iFrame ТРЯБВА да го направите видим и показан, в противен случай някои браузъри няма да заредят съдържанието от съображения за сигурност. Можете обаче да го направите 1x1px и непрозрачност 0,01%. Сблъсках се с този проблем веднъж преди с джаджа за качване между сайтове. - person coolaj86; 03.11.2010

Можете да използвате свойството display на style. Първоначално задайте стила на секцията с резултати като

style = "display:none"

Тогава div няма да се вижда и няма да има бяло пространство.

След като резултатите от търсенето се попълнят, променете свойството за показване, като използвате java скрипта като

document.getElementById("someObj").style.display = "block"

С помощта на java скрипт можете да направите div невидим

document.getElementById("someObj").style.display = "none"
person Sujith    schedule 03.11.2010

Не мисля, че наистина искате iframe, нали?

Освен ако не правите нещо странно, трябва да получавате резултатите си обратно като JSON или (в най-лошия случай) XML, нали?

За вашия проблем с бяла кутия/допълнително пространство, опитайте

style="display: none;"

вместо

style="visibility: hidden;"
person coolaj86    schedule 03.11.2010
comment
да, всъщност го правя, добре, не ИСКАМ такъв, но се изисква от клиента - person mattgcon; 03.11.2010

Ако искате да използвате display=block, това ще накара четеца на съдържание да скочи, така че вместо да използвате display, можете да зададете левия атрибут на отрицателна стойност, която не съществува във вашата html страница, която да се показва, но всъщност го прави.

Надявам се, че разбирате моята гледна точка, ако не мога да ви накарам да разберете, можете да ми изпратите обратно съобщение.

person Prateek    schedule 03.11.2010