2011-03-10 2 views
1

특정 클래스의 트리거 링크를 클릭하면 div에 HTML을 삽입 할 수있는 HTML 페이지에 jQuery BBQ을 성공적으로 구현했습니다. 내가하고 싶은 것은 document.ready가 주입에 의해 트리거 된 것처럼 주입 된 페이지 내에 포함 된 jquery를 실행하는 것이다.jQuery BBQ - 삽입 된 자바 스크립트에서 이벤트를 document.ready와 같이 실행

jQuery 1.4.4를 사용하고 있으므로 LiveQuery를 피하는 것이 좋습니다. 여기

지금까지 내 시도 : - 기본적으로 당신은 당신이 다음과 같이 원래의 스크립트에서 AJAX 호출 아래 AJAX 주입에 의해 트리거 될 원하는 무엇이든 삽입 할 수 있습니다 - 나는 해결책을 찾기 위해 관리

// Global Join Functions 

$(window).bind('hashchange', function() { 
    // ================================================================== 
    // Progressively enhance Radio Buttons and Checkboxes 
    // ================================================================== 
    $(".enhancedradiocheck").buttonset(); 
    // ================================================================== 
    // Ajaxify links and load them in a div whilst hashing state 
    // ================================================================== 
    // Keep a mapping of url-to-container for caching purposes. 
    var cache = { 
     // If url is '' (no fragment), display this div's content. 
     '': $('.form-default') 
    }; 
    // Bind an event to window.onhashchange that, when the history state changes, 
    // gets the url from the hash and displays either our cached content or fetches 
    // new content to be displayed. 
    $(window).bind('hashchange', function (e) { 
     // Get the hash (fragment) as a string, with any leading # removed. Note that 
     // in jQuery 1.4, you should use e.fragment instead of $.param.fragment(). 
     var url = $.param.fragment(); 
     // Remove .form-current class from any previously "current" link(s). 
     $('a.form-current').removeClass('form-current'); 
     // Hide any visible ajax content. 
     $('.ajaxified').children(':visible').hide(); 
     if (cache[url]) { 
      // Since the element is already in the cache, it doesn't need to be 
      // created, so instead of creating it again, let's just show it! 
      cache[url].show(); 
     } else { 
      // Show "loading" content while AJAX content loads. 
      $('.form-loading').show(); 
      // Create container for this url's content and store a reference to it in 
      // the cache. 
      cache[url] = $('<div class="form-item"/>') 
      // Append the content container to the parent container. 
      .appendTo('.ajaxified') 
      // Load external content via AJAX. Note that in order to keep this 
      // example streamlined, only the content in .infobox is shown. You'll 
      // want to change this based on your needs. 
      .load(url, function() { 
       // Content loaded, hide "loading" content. 
       $('.form-loading').hide(); 
      }); 
     } 
    }) 
    // Since the event is only triggered when the hash changes, we need to trigger 
    // the event now, to handle the hash the page may have loaded with. 
    $(window).trigger('hashchange'); 
    //Add the hash to any link with the class ajaxlink so it degrades gracefully 
    $("a.ajaxlink").each(function() { 
     el = $(this); 
     ajaxhref = "#" + el.attr("href"); 
     el.attr("href", ajaxhref); 
    }) 
}); 

답변

1

-

.load(url, function() { 
       // Content loaded, hide "loading" content. 
       $('.form-loading').hide(); 
       $(".enhancedradiocheck").buttonset(); 


      }); 
관련 문제