У меня есть простой JavaScript, который я использую для автоматической настройки ширины элементов на страницах и для вертикального центрирования текста на этих страницах.
Мой скрипт работает, но в IE9 и немного вВ Safari есть отчетливый момент, когда элементы не изменяются в размерах и перепрыгивают через страницу.Это всего лишь мгновенная вспышка, но она меня беспокоит, потому что я, как правило, не «достаточно хороший» человек.Вот мой собственный сценарий:
$(document).ready(function() {
var containerwidth = $("#main_content").css("width");
var picwidth = $(".picture").css("width");
$(".picture").parent().css("width", picwidth);
var correctwidth = parseInt(containerwidth) - parseInt(picwidth);
$(".main-text").css("width",correctwidth-25);
if( $(".margins").css("width") ) {
$(".title").css("width", parseInt($(".width-set").css("width"))+10);
} else {
$(".title").css("width", parseInt($(".title").parent().css("width"))-10);
}
var container_height = $(".main-text").height();
var text_height = $(".vert-align").height();
var offset = (container_height - text_height) / 2;
$(".vert-align").css("margin-top", offset);
[...]
});
Я понимаю, что использование явных смещений и тому подобного является хакерским, но я спешу и исправлю это позже.И да, я использую jQuery.
Это хранится в файле, и я пробовал как вызывать его в голове, а также непосредственно после элементов, на которые он влияет, но результат тот же.Является ли этот джиттер просто фактом использования манипуляций с элементами в javascript или есть какое-то решение, которое я пропустил на форумах?
Спасибо!