>  기사  >  웹 프론트엔드  >  js_javascript 기술에서 해시와 ico의 상관관계 분석

js_javascript 기술에서 해시와 ico의 상관관계 분석

WBOY
WBOY원래의
2016-05-16 16:15:41961검색

이 글에서는 예시를 통해 js의 해시와 ico 간의 몇 가지 관계를 분석합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 내용은 다음과 같습니다.

최근 테스트 결과 일부 페이지의 아이콘이 표시되지 않는다는 버그가 발견되어 해당 문제의 원인을 조사했습니다.

먼저 페이지의 링크에 favicon.ico가 도입되었는지 확인하세요. 확인 결과, js의 location.hash로 인해 아이콘이 표시되지 않는 것으로 확인되었습니다. 그 이유는 ico가 로드되지 않은 상태에서 location.hash가 설정되어 ico가 표시되지 않기 때문입니다.

location.hash는 http://h.liepin.com/#job-manage의 "#job-manage"와 같은 URL 위치 지정을 위한 프로젝트에서 자주 사용됩니다.

해결 방법은 다음과 같습니다(현재 프로젝트를 예로 들어 구체적인 상황을 자세히 분석).

프로젝트 포인트:

1. Ajax 요청을 보내기 위해 메뉴를 클릭하면 페이지 콘텐츠가 전송됩니다.

2. 페이지 진입 시 표시되는 내용은 특정 메뉴의 기본 클릭 이벤트입니다.

3. location.hash 설정은 특정 메뉴의 클릭 이벤트를 통해 이루어집니다.

페이지 진입 시 메뉴의 클릭 이벤트가 실행되어 location.hash가 설정되는 문제가 있습니다.

페이지에 처음 들어갈 때 location.hash가 설정되지 않도록 변수를 설정하면 됩니다.

$(function(){
 $('.menu a').click(function(event,hashBoolean){
  var that = $(this);
  $.ajax({
   url:'',
   type:'GET',
   data:{},
   cache:false,
   dataType:'json',
   success:function(data){
    if(data.flag == 1){
     if(!hashBoolean) location.hash = ['id',that.attr('data-id')].join('=');
    }
   }
  });
 });
 
 $('.menu a').eq(0).trigger('click',[true]);
});
이 기사가 모든 사람의 JavaScript 프로그래밍 설계에 도움이 되기를 바랍니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.