Team:TU-Munich/TUM13 ajax.js
From 2013.igem.org
(Difference between revisions)
Line 16: | Line 16: | ||
function ajaxLoad(url) { | function ajaxLoad(url) { | ||
- | + | ajaxSrc = url; | |
- | + | $.ajax({ | |
- | + | url: ajaxSrc, | |
- | + | data: { action: 'render' }, | |
- | + | type: "GET", | |
- | + | error: function(xhr, status) { | |
- | + | window.location = ajaxSrc; | |
- | + | }, | |
- | + | success: function(render) { | |
- | + | tmp = $('<div />').html(render); | |
- | + | $(tmp).find('#wikicontent').children().appendTo($('#wikicontent')); | |
- | + | ajaxReady(); | |
- | + | } | |
- | + | }); | |
- | + | $(window).off('scroll', gotop); | |
- | + | $('html').animate({scrollTop : 0},400,'swing',function(){ | |
- | + | $(window).scroll(gotop); | |
- | + | $("a#gotop").fadeOut(400); | |
- | + | $('#wikicontent').children().remove(); | |
- | + | }); | |
- | + | } | |
- | + | function ajaxStateChange(e) { | |
- | + | ajaxLoad(History.getState().url); | |
- | + | } | |
History.Adapter.bind(window, 'statechange', ajaxStateChange); | History.Adapter.bind(window, 'statechange', ajaxStateChange); |
Revision as of 21:25, 21 October 2013
function ajaxBinding() {
var links = new Array(); for (i = 0; i < $('#bodyContent a').length; i++) { if ( $('#bodyContent a')[i].href.search('https://2013.igem.org/Team:TU-Munich') != -1 && $('#bodyContent a')[i].href.search('Labjournal') == -1 ) { links.push($('#bodyContent a')[i]); } }
$(links).click(function(e){ e.preventDefault(); History.pushState(null, this.href.substring(21) + ' - 2013.igem.org', this.href); });
}
function ajaxLoad(url) {
ajaxSrc = url; $.ajax({ url: ajaxSrc, data: { action: 'render' }, type: "GET", error: function(xhr, status) { window.location = ajaxSrc; }, success: function(render) { tmp = $('<div />').html(render); $(tmp).find('#wikicontent').children().appendTo($('#wikicontent')); ajaxReady(); } }); $(window).off('scroll', gotop); $('html').animate({scrollTop : 0},400,'swing',function(){ $(window).scroll(gotop); $("a#gotop").fadeOut(400); $('#wikicontent').children().remove(); });
}
function ajaxStateChange(e) {
ajaxLoad(History.getState().url);
}
History.Adapter.bind(window, 'statechange', ajaxStateChange);
$(document).ready(ajaxBinding);
function ajaxReady() {
ajaxBinding();
}