이걸로 끝이어야 하는데 갑자기 질문이 생각났습니다. 이 접근 방식은 실제로 jQuery의 호버 아이디어와 동일하며, 여기에는 마우스가 레이블을 이동할 때마다 Dom 요소 업데이트에 대한 폴링이 포함됩니다. 전송 및 수신할 데이터가 있어야 하며 위의 작은 데이터에는 영향을 미치지 않습니다. 그러나 Dom 요소 업데이트가 10kb 또는 심지어 수십kb. 이는 의심할 여지 없이 웹 페이지의 성능에 큰 도전을 가져옵니다...
그래서 저는 또 다른 작은 변화를 주었습니다. 즉, Dom을 사용하여 숨겨진 프레임 사용법을 재구성한 것입니다. 페이지에서 처음 로드 시 첫 번째 태그에 해당하는 Div, 즉 앨범에 해당하는 Div가 먼저 로드됩니다. 다른 탭 태그로 마우스를 이동하면 해당 태그에 해당하는 요소가 추가됩니다. 요소가 존재하는 경우 숨겨진 요소 제거) 그리고 존재하지 않는 경우 추가)를 표시하고 다른 탭 태그에 해당하는 Div 태그를 숨깁니다... 이 방법에는 "다단계 다운로드..."라는 이름이 있으므로 매번 요소를 업데이트할 필요가 없다는 코드는 다음과 같습니다.
//태그 숨기기
함수 탭(i)
{
for(var j=1;j<5;j )
{
$("#tabcontent" j).hide();
}
$("#tabcontent" i).show()
var num,ids,ordnum; ("#tabcontent" i).length;//이 문장은 매우 중요합니다. 요소를 반복적으로 로드한다는 판단을 없애줍니다. (요소가 있으면 다시 추가할 필요가 없습니다.)
if(len== 0)
{
스위치(i)
{
케이스 1 :{ 추가(1,1,"f") break;}
케이스 2:{ 추가(2,5) ,"s"); 중단;}
사례 3:{ 추가(3,9, "t"); 중단;}
사례 4:{ 추가(4,13,"fo"); }
}
}
}
//load 데이터 입력
function Append(i,j,type)
{
var str="
";
str ="
";
str ="
";
str ="
";
str ="
"
str ="
";
str ="
";
str ="
";
str ="
";
str = "
div>"
str ="
"; >$("#tabcontent").append(str);
}
4. 디자인 요약
웹사이트 성능이 개선되었습니다. 첫 번째 로드 시 페이지 요소의 과부하나 Dom 트리로 인한 지연이 발생하지 않습니다. 지속적인 업데이트로 인해 페이지 표시 성능이 저하됩니다...
그림과 같이:
소스코드 다운로드
/201010/yuanma/DomForm.rar