| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- $(function () {
- 'use strict';
- var pagePath = document.location.pathname.substring(document.location.pathname.lastIndexOf("/") + 1);
- // select current page in sidenav and set up prev/next links if they exist
- var $selNavLink = $('#sidebar').find('a[href="' + pagePath + '"]');
- if ($selNavLink.length) {
- //$selListItem = $selNavLink.closest('li');
- $selNavLink.addClass('currentItem');
- }
- if (window.addEventListener) window.addEventListener('load', loadCallback, true);
- else window.attachEvent('load', loadCallback, true);
- function loadCallback(evt) {
- var form = document.getElementById("searchbox");
- if (form) {
- var input = form.query;
- form.onsubmit = function (evt) {
- var query = input.value;
- if (query) {
- input.value = "";
- input.blur();
- var url = "https://www.google.com/search?q=" + encodeURIComponent("site:ace.ajax.org" + " " + query);
- window.open(url);
- }
- return false;
- };
- }
- }
- // init search
- $('#search')
- // prevent from form submit
- .on('submit', function () {
- return false;
- }).find('input');
- });
- function ux() {
- var d = 'a.menu, .dropdown-toggle'
- function clearMenus() {
- $(d).parent('li').each(function () {
- $(this).removeClass('open')
- });
- }
- var s, sx;
- // scrolling offset calculation via www.quirksmode.org
- if (window.pageYOffset || window.pageXOffset) {
- s = window.pageYOffset;
- sx = window.pageXOffset;
- }
- else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) {
- s = document.documentElement.scrollTop;
- sx = document.documentElement.scrollLeft;
- }
- else if (document.body) {
- s = document.body.scrollTop;
- sx = document.body.scrollLeft;
- }
- if (document.documentElement.offsetWidth < 1010) {
- if (sx <= 0) sx = 0;
- else if (sx + document.documentElement.offsetWidth > 1010) sx = 1010 - document.documentElement.offsetWidth;
- }
- else sx = 0;
- $('span.methodClicker, article.article, i.methodClicker').each(function () {
- var a = $(this);
- var constructorPos = a.attr("id").indexOf("new ");
- var objName = a.attr("id");
- if (constructorPos >= 0) {
- objName = objName.substring(constructorPos + 4);
- objName += ".new";
- }
- a.attr("id", objName);
- });
-
- function showMethodContent() {
- var locationHash = location.hash.replace(/^#/, '').replace(/\./g, '\\.');
- var equalsPos = location.hash.indexOf("=");
-
- if (equalsPos >=0) {
- locationHash = locationHash.substring(0, location.hash.indexOf("="));
- }
-
- var $clickerEl = $('span#' + locationHash);
- if ($clickerEl.length > 0 && $clickerEl.hasClass('methodClicker')) {
- var p = $clickerEl.parent();
- p[0].force = true;
- p.trigger('click');
- p[0].force = false;
- }
- }
- if (location.hash.indexOf("section") >= 1) {
- showMethodContent();
- var data = location.hash;
- scrollTo(null, data.substr(1));
- }
- window.onhashchange = function () {
- showMethodContent();
- }
- };
- function scrollTo(el, data) {
- if (!data) {
- data = el.getAttribute("data-id");
- //location.hash = data;
- }
- var el = $("span#" + data.replace(/\./g, "\\."))[0];
- if (!el) return;
- var article = $(el).closest('.article')[0];
- var top = article.offsetTop - 100;
- if (document.body.scrollTop > top || document.body.scrollTop != top && document.body.scrollTop + (window.innerHeight || document.documentElement.offsetHeight) < top + article.offsetHeight) {
- $('body').animate({
- scrollTop: top
- }, {
- duration: 200,
- easing: "swing"
- });
- }
- }
|