2015-05-05 3 views
0

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

Возможно, это может быть сделано с помощью window.focus(), но проблема в том, что окно просто создается с одной страницы aspx, поэтому, если пользователь переходит на другую страницу aspx, я не вижу возможности фокусировать это окно, даже если объявляю глобальная переменная, так как эта переменная является глобальной только для веб-страницы aspx, в которой она находится.

Спасибо за вашу помощь.

+0

Возможно, есть альтернативное решение, такое как iframe в плавающем окне в окне просмотра браузера. Какая проблема - это всплывающее окно, предназначенное для решения? – Dai

ответ

0

Возможно, вы думаете о всплывающем окне «Модальное», которое представляет собой «блокировку» чего-либо на главной странице, пока оно открыто.

Есть много альтернатив: http://www.sitepoint.com/14-jquery-modal-dialog-boxes/

, но я предлагаю bPopup, так как это очень легкий и простой в использовании: http://dinbror.dk/bpopup/

Очевидно, что все они нуждаются в JQuery.

Однако, если вы действительно хотите всплывающее окно поверх всего остального, вы можете просто изменить его значение z-index на очень большое число (например, 9000 или даже более 9000).

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

function maxZ() { 
    var maxZ = Math.max.apply(null,$.map($('body > *'), function(e,n){ 
      if($(e).css('position')=='absolute') 
       return parseInt($(e).css('z-index'))||1 ; 
      }) 
    ); 
    return maxZ; 
} 

Источник: http://www.sitepoint.com/jquery-find-highest-z-index-page/

Обратите внимание на часть $(e).css('z-index'), которая является правильным способом считывания индекса z, и вы можете установить его с помощью $(e).css('z-index', 9000).

Смежные вопросы