1
function switchTemplate(stylePath){
var ns = $('<link>', {
href: stylePath,
id: 'themeStyle',
type: 'text/css',
rel: 'stylesheet'
});
$('#themeStyle').replaceWith(ns);
resetPops();
positionElements();
$('#video-overlay').show();
}
스타일 시트가 제대로로드되어 잠시 후에 표시되지만 positionElements 함수 (offset()을 사용하여 비디오 요소 위에 비디오 오버레이를 배치)가 올바르게 실행되지 않습니다. 나는 새로운 DOM 위치가 아직없는 것 같아요?javascript DOM에 영향을 미치는 스타일 시트 재로드 지연?
저는 positionElements()가 있습니다. 창 크기 조정에 연결되어 있고 스타일 시트를 전환 한 직후에 바로 호출하면 모든 것이 올바른 위치로 이동합니다.
나는 타이머 지연을 만들 수 있다고 생각하지만, 특히 안정적으로 보이지는 않습니다. positionElements() 함수를 묶어서 최신 상태로 유지할 수있는 다른 이벤트가 있습니까?
굉장합니다. 완전한! :) – Damon