2013-05-15 8 views
11

Mam istniejący związek, który otwiera stronę w nowym oknie z pasków przewijania wyłączone w następujący sposób:Włączenie paski przewijania przeglądarki po window.open z pasków przewijania = nie

<a onclick='window.open("example.html", "name", "resizable=1,scrollbars=no,width=500,height=200");' href='#'>Click to pop up without scroll bars</a> 

Dla argumentu, nie mogę zmień ten kod window.open(). Muszę włączyć paski przewijania po otwarciu okna.

To działa w IE za pomocą następującego kodu:

<script type="text/javascript"> 
    onload=function() 
     { 
    enableScrolling(); 
    } 
    function enableScrolling() 
    { 
     document.body.scroll = "yes"; // IE 
    } 
</script> 

Jednak to nie działa w Firefox lub Chrome.

Według tej stronie poniższy kod powinien działać na Firefox i Chrome, ale nie robi (może to działało w poprzednich wersjach?)

 document.documentElement.style.overflow='scroll'; 
     document.body.style.overflow='scroll'; 

Czy ktoś wie, czy jest możliwe, aby umożliwić suwakami w FireFox i Chrome po otwarciu okna z wyłączonymi paskami przewijania?

+0

Dzięki za twój wpis. Rozwiązałem problem z powodu Twojego wpisu. (Przynajmniej dla IE) –

+0

Nie sądzę, że możesz wyłączyć pasek przewijania w Chrome za pomocą tego kodu, więc po prostu musisz znaleźć poprawkę dla Firefoksa. –

+0

Spróbuj '' i javascript nie jest dobrym przewijaniem atrybutów. – KingRider

Odpowiedz

0

Ponieważ dodajesz js do IE, zakładam, że możesz zmienić sposób wyświetlania wyświetlanej strony. W tym przypadku spróbowałbym umieścić zawartość otwartego okna w div i ustawić jego styl na coś takiego jak: height: 200px; overflow: auto;

0

Właściwie Próbowałem z innej przeglądarki, jeśli masz stałe wymagania dotyczące wysokości, co można zrobić, to owinąć całą zawartość example.html w określonym div z załączonym css jak overflow:auto;height:200px. Pokażę ci cały kod.

<body> 
<div style="overflow:auto;height:200px;"> 
    Your HTML code  
</div> 
</body> 

umieścić go w example.html. Wysokość, którą możesz uzyskać z kodu window.open("example.html", "name", "resizable=1,scrollbars=no,width=500,height=200");.

To nie jest rzeczywiste rozwiązanie, ale rozwiąże problem w każdej przeglądarce.

Mam nadzieję, że ta pomoc.

1

Tak jak powiedział Nikunj Soni, ustawienie atrybutu height na znacznik body pomoże rozwiązać problem w każdej przeglądarce. To, co zrobię inaczej, jest następujące:

Zamiast ustawiać stałą wysokość, ustawiłabym height:100%, co umożliwi ci otwarcie popup również w różnych rozmiarach niż oryginał.

<body style="overflow:auto; height:100%;"> 
     The rest of your HTML code 
</body> 

To także nie jest najlepsze rozwiązanie, ale w rzeczywistości usuwa się restrykcje z linku.

Mam nadzieję, że ta odpowiedź jest pomocna.