Я раньше имел поля списков, делают такого рода вещь. Вы просто удаляете первую строку, если количество строки достигает, скажем, 1000. Если строка журнала является слишком длинной, Вы могли бы сделать поле списка немного шире (зависит от информации о журнале и возможно ли поймать значение от первых видимых слов без горизонтальной прокрутки), и сделайте horizonal полосу прокрутки видимой.
Вы можете вызвать findHighestZIndex
для определенного типа элемента, такого как 'DIV', например:
findHighestZIndex('div');
при условии, что функция findHighestZindex
определена например:
function findHighestZIndex(elem)
{
var elems = document.getElementsByTagName(elem);
var highest = 0;
for (var i = 0; i < elems.length; i++)
{
var zindex=document.defaultView.getComputedStyle(elems[i],null).getPropertyValue("z-index");
if ((zindex > highest) && (zindex != 'auto'))
{
highest = zindex;
}
}
return highest;
}
Кража кода с сайта abcoder для ясности:
var maxZ = Math.max.apply(null,
$.map($('body *'), function(e,n) {
if ($(e).css('position') != 'static')
return parseInt($(e).css('z-index')) || 1;
}));
На мой взгляд, лучший способ решить эту проблему - просто установить себе соглашения о том, какие типы z-index
es используются для различных типов элементов. Затем вы найдете правильный z-index
для использования, просмотрев свою документацию.
Я считаю, что вы наблюдаете вуду. Без доступа к вашей полной таблице стилей я, конечно, не могу сказать достоверно; но мне кажется вероятным, что на самом деле здесь произошло то, что вы забыли, что только позиционированные элементы подвержены z-index
.
Кроме того, z-index
es aren не назначается автоматически, только в таблицах стилей, что означает, что без других элементов z-index
ed, z-index: 1;
будет поверх всего остального.
Думаю, вам придется сделать это самому ...
function findHighestZIndex()
{
var divs = document.getElementsByTagName('div');
var highest = 0;
for (var i = 0; i < divs .length; i++)
{
var zindex = divs[i].style.zIndex;
if (zindex > highest) {
highest = zindex;
}
}
return highest;
}
Нет свойства по умолчанию или чего-то еще, но вы можете написать какой-нибудь javascript для циклического перебора всех элементов и разобраться. Или, если вы используете библиотеку управления DOM, такую как jQuery, вы можете расширить ее методы (или узнать, поддерживает ли она ее уже), чтобы она начинала отслеживать z-индексы элементов с момента загрузки страницы, а затем становится тривиальным получение наивысшего z- index.