Всплывающее окно без фоновой прокрутки на JqueryMobile

0

У меня есть большой JqueryMobile Popup с полупрозрачным цветом. Что-то вроде:

<div data-role="popup" id="popupBasic">
    <p>SOMETHING BIG</p>
</div>

#popupBasic{
background-color:rgba(0,0,0,0.5);
}

Прямо сейчас я могу прокручивать всплывающее окно (потому что оно слишком велико, чтобы поместиться на экране), но я не хочу прокручивать оставшуюся часть страницы (что я вижу, потому что фон прозрачен)

Теги:
mobile
jquery-mobile

2 ответа

1

Когда вы активируете свое всплывающее окно, установите body { overflow: hidden; } body { overflow: hidden; } в вашем CSS. Это приведет к зависанию страницы и не позволит прокручивать ее. Не забудьте повторно активировать его, когда вы закрываете всплывающее окно!

  • 0
    Не сработало, из-за чего все страницы зависли, включая всплывающее окно, и я хочу прокрутить внутрь.
  • 1
    body { overflow: hidden; } влияет только на тело, оно не изменит всплывающее окно. Можете ли вы воспроизвести эту проблему для меня?
Показать ещё 1 комментарий
0

У меня была такая же проблема, как у вас, я полагаю, вы вызываете свое всплывающее окно с помощью ajax, если да, тогда

такой код

function ajaxFunction(gotid){
$('body').css("overflow","hidden");  // <----- like this 
$.ajax({
.... the rest of your code

поможет вам и будет в безопасности, вы можете вернуть его, сделав вашу функцию закрытия чем-то вроде этого

function closeme(){
$('body').css("overflow","scroll");  // <----- will set it back to scrollable 

Ещё вопросы

Сообщество Overcoder
Наверх
Меню