jQuery CDN for XE 1.7

1.0.3

이 애드온 소스 안에 버전수치를 이것 저것 찾아서 최근것(?)으로 올려서 문제가 발생되는 페이지는 끄고 쓴다면...어떨까요?

초보자의 의미없는 꼼수인가요? ㅎㅎㅎ

 

<?php

/**
 * jQuery CDN XE Addon
 * @file jquerycdn.class.php
 * @author 이즈야 ([email protected])
 * Copyright (C) ISIZU. All rights reserved.
 **/
    
class jQueryCDNHandler extends HTMLDisplayHandler
{
    function _loadJSCSS()
    {
        $oContext = Context::getInstance();
        parent::_loadJSCSS();
        
        if (__DEBUG__)
        {
            $oContext->unloadFile('./common/js/jquery-1.x.js', 'lt IE 9');
            $oContext->unloadFile('./common/js/jquery.js', 'gte IE 9');
            $oContext->unloadFile('./common/js/jquery.js');
        }
        else
        {
            $oContext->unloadFile('./common/js/jquery-1.x.min.js', 'lt IE 9');
            $oContext->unloadFile('./common/js/jquery.min.js', 'gte IE 9');
            $oContext->unloadFile('./common/js/jquery.min.js');
        }
    }
    
    /**
     * Import jQuery CDN files.
     * @return void.
     **/
    function _loadCDNJS(&$type)
    {
        $oContext = Context::getInstance();
        
        if (__DEBUG__)
        {
            if (!$type || $type == 'jquery')
            {
                $oContext->loadFile(array('///code.jquery.com/jquery-1.12.3.js', 'head', 'lt IE 9', -111000));
                $oContext->loadFile(array('///code.jquery.com/jquery-3.1.0.js', 'head', 'gte IE 9', -110000));
            }
            else if ($type == 'google')
            {
                $oContext->loadFile(array('///ajax.googleapis.com/ajax/libs/jquery/1.12.3/jquery.js', 'head', 'lt IE 9', -111000));
                $oContext->loadFile(array('///ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.js', 'head', 'gte IE 9', -110000));
            }
            else if ($type == 'microsoft')
            {
                $oContext->loadFile(array('///ajax.aspnetcdn.com/ajax/jquery/jquery-1.12.3.js', 'head', 'lt IE 9', -111000));
                $oContext->loadFile(array('///ajax.aspnetcdn.com/ajax/jquery/jquery-3.1.0.js', 'head', 'gte IE 9', -110000));
                $oContext->loadFile(array('///ajax.aspnetcdn.com/ajax/jquery.migrate/jquery-migrate-1.4.1.js', 'head', '', -110000));
            }
            if ($type != 'microsoft')
            {
                $oContext->loadFile(array('///code.jquery.com/jquery-migrate-1.4.1.js', 'head', '', -110000));
            }
        }
        else
        {
            if (!$type || $type == 'jquery')
            {
                $oContext->loadFile(array('///code.jquery.com/jquery-1.12.3.min.js', 'head', 'lt IE 9', -111000));
                $oContext->loadFile(array('///code.jquery.com/jquery-3.1.0.min.js', 'head', 'gte IE 9', -110000));
            }
            else if ($type == 'google')
            {
                $oContext->loadFile(array('///ajax.googleapis.com/ajax/libs/jquery/1.12.3/jquery.min.js', 'head', 'lt IE 9', -111000));
                $oContext->loadFile(array('///ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js', 'head', 'gte IE 9', -110000));
            }
            else if ($type == 'microsoft')
            {
                $oContext->loadFile(array('///ajax.aspnetcdn.com/ajax/jquery/jquery-1.12.3.min.js', 'head', 'lt IE 9', -111000));
                $oContext->loadFile(array('///ajax.aspnetcdn.com/ajax/jquery/jquery-3.1.0.min.js', 'head', 'gte IE 9', -110000));
                $oContext->loadFile(array('///ajax.aspnetcdn.com/ajax/jquery.migrate/jquery-migrate-1.4.1.min.js', 'head', '', -110000));
            }
            if ($type != 'microsoft')
            {
                $oContext->loadFile(array('///code.jquery.com/jquery-migrate-1.4.1.min.js', 'head', '', -110000));
            }
        }
    }
}

  • profile

    기분상 메인페이지와 같이 위젯이 많은 페이지는 속도가 빨라진듯한 느낌인데..그냥 기분상이겠죠? ㅎ

  • ?
    소스코드를 보니 초보자가 아니신 듯 합니다ㅋㅋㅋ
  • ? profile
    열어만 보고 비교만 할줄 압니다. 그래서 가끔 얻어걸리는건 수정해서 씁니다. ^^
  • ? profile
    그니까 이런 꼼수가 말이 되는거냐고요 안되는거냐고요? ㅎㅎㅎㅎ 궁금하다구요
  • profile
    이건... 초보가 범접할 수 없는 구역이군요.
  • profile

    라이믹스에서는 해당 애드온을 사용하실 수 없습니다. (develop 브랜치에서 블랙리스트 등록했습니다.)

    HTMLDisplayHandler를 어마어마하게 뜯어고쳤기 때문에 저런 식으로 커스터마이징하면 오류 납니다.

  • profile profile
    넵 감사합니다 ^^
  • profile
    생각해보니 혼자 조용히 쓸껄 괜히 여기 올려서 블랙리스트로 걸렸군요 ㅎㅎㅎㅎ
  • profile profile

    어차피 동작에 문제가 있으며 라이믹스에서 지원하지 않는 방식으로 개발된 자료기에 언제든지 블랙리스트로 등록될 수 있던 자료였습니다.

     

    js,css 파일 등은 CDN을 사용해도 큰 속도향상을 기대하기 힘들 뿐더러(애초에 파일크기가 작아서 CDN으로 개선되는 속도도 미미합니다), CDN보다는 캐시 만료시간 설정이 훨씬 속도향상에 도움이 되므로 사용하지 않으셔도 됩니다.

  • profile profile
    그렇군요 ^^ 감사합니다!