|
33 | 33 |
|
34 | 34 | if (supportHistory == false) return Mobilebone;
|
35 | 35 |
|
36 |
| - // similar to $().prop() method, but with a diff rule |
37 |
| - var prop = function(element, attribute) { |
38 |
| - var attr = element.getAttribute(attribute); |
39 |
| - if (attr == null || attr == "false" || attr == "0") return false; |
40 |
| - return true; |
41 |
| - }; |
42 |
| - |
43 | 36 | /**
|
44 | 37 | * Current version of the library. Keep in sync with `package.json`.
|
45 | 38 | *
|
46 | 39 | * @type string
|
47 | 40 | **/
|
48 |
| - Mobilebone.VERSION = '1.0.0'; |
| 41 | + Mobilebone.VERSION = '1.1.0'; |
49 | 42 |
|
50 | 43 | /**
|
51 | 44 | * Whether bind events when dom ready
|
|
60 | 53 | * If the value set to false, jump links in a refresh form(not slide)
|
61 | 54 | * In most cases, you do not need to care about this parameter.
|
62 | 55 | Except some special pages that should refresh all links, as test/index.html show.
|
63 |
| - However, if your only want several links refesh, you can use data-ajax="false" or data-role="external" |
| 56 | + However, if your only want several links refesh, you can use data-ajax="false" or data-rel="external" |
64 | 57 | *
|
65 | 58 | * @type boolean
|
66 | 59 | **/
|
|
113 | 106 | * @returns undefined
|
114 | 107 | * @example Mobilebone.transition(element);
|
115 | 108 | Mobilebone.transition(element1, element2);
|
116 |
| - Mobilebone.transition(element1, element2, true); |
117 |
| - Mobilebone.transition(element1, element2, { id: "only" }); |
118 |
| - Mobilebone.transition(element1, element2, true, { id: "only" }); |
| 109 | + Mobilebone.transition(element1, element2, true); |
| 110 | + Mobilebone.transition(element1, element2, { id: "only" }); |
| 111 | + Mobilebone.transition(element1, element2, true, { id: "only" }); |
119 | 112 | **/
|
120 | 113 | Mobilebone.transition = function(pageInto, pageOut, back, options) {
|
121 | 114 | if (arguments.length == 0) return;
|
|
153 | 146 | });
|
154 | 147 |
|
155 | 148 | if (typeof _params.root == "string") {
|
156 |
| - _params.root = root[_params.root]; |
| 149 | + _params.root = Mobilebone.getFunction(_params.root); |
157 | 150 | }
|
158 | 151 |
|
159 | 152 | return _params;
|
|
261 | 254 | * @returns string
|
262 | 255 | * @example Mobilebone.getCleanUrl(elementOfA);
|
263 | 256 | Mobilebone.getCleanUrl(elementOfA, '', "a=1&b=2");
|
264 |
| - Mobilebone.getCleanUrl(null, "xxx.html"); |
265 |
| - Mobilebone.getCleanUrl(null, "xxx.html?a=1&b=2"); |
266 |
| - Mobilebone.getCleanUrl(null, "xxx.html", "a=1&b=2"); |
| 257 | + Mobilebone.getCleanUrl(null, "xxx.html"); |
| 258 | + Mobilebone.getCleanUrl(null, "xxx.html?a=1&b=2"); |
| 259 | + Mobilebone.getCleanUrl(null, "xxx.html", "a=1&b=2"); |
267 | 260 | **/
|
268 | 261 | Mobilebone.getCleanUrl = function(trigger, url, params) {
|
269 | 262 | var href = "", formdata = "", clean_url = "";
|
|
341 | 334 | * @returns undefined
|
342 | 335 | * @example Mobilebone.createPage(pageDom);
|
343 | 336 | Mobilebone.createPage(generalDom);
|
344 |
| - Mobilebone.createPage('<div class="page out">xxx</div>'); |
345 |
| - Mobilebone.createPage('<p>xxx</p>'); |
346 |
| - Mobilebone.createPage(pageDom, triggerLink); |
347 |
| - Mobilebone.createPage(pageDom, { reponse: '<div...>' }); |
348 |
| - Mobilebone.createPage(pageDom, triggerLink, { reponse: '<div...>' }); |
| 337 | + Mobilebone.createPage('<div class="page out">xxx</div>'); |
| 338 | + Mobilebone.createPage('<p>xxx</p>'); |
| 339 | + Mobilebone.createPage(pageDom, triggerLink); |
| 340 | + Mobilebone.createPage(pageDom, { reponse: '<div...>' }); |
| 341 | + Mobilebone.createPage(pageDom, triggerLink, { reponse: '<div...>' }); |
349 | 342 | *
|
350 | 343 | **/
|
351 | 344 | Mobilebone.createPage = function(dom_or_html, element_or_options, options) {
|
|
406 | 399 | * @returns function
|
407 | 400 | undefined keys is not string
|
408 | 401 | window keys unfinded
|
409 |
| - * @example Mobilebone.createPage("a.b.c"); |
| 402 | + * @example Mobilebone.getFunction("a.b.c"); |
410 | 403 | *
|
411 | 404 | **/
|
412 | 405 | Mobilebone.getFunction = function(keys) {
|
|
510 | 503 |
|
511 | 504 | // ajax request
|
512 | 505 | var xhr = new XMLHttpRequest();
|
513 |
| - xhr.open("GET", params.url + (/\?/.test(params.url)? "&" : "?") + "r=" + Date.now()); |
| 506 | + xhr.open("GET", params.url + (/\?/.test(params.url)? "&" : "?") + "r=" + Date.now(), params.async, params.username, params.password); |
514 | 507 | xhr.timeout = params.timeout;
|
515 | 508 |
|
516 | 509 | xhr.onload = function() {
|
|
574 | 567 |
|
575 | 568 |
|
576 | 569 | /**
|
577 |
| - * Sometime we don't know direction of transition. Such as browser history change, or data-role="auto". |
| 570 | + * Sometime we don't know direction of transition. Such as browser history change, or data-rel="auto". |
578 | 571 | In this case, we ensure the direction(back or prev) by the sorts of two pages(into or out)
|
579 | 572 |
|
580 | 573 | * @params page_in dom-object - Necessary
|
|
671 | 664 |
|
672 | 665 | // if mask element exist and displaying, prevent double trigger
|
673 | 666 | var ele_mask = target.getElementsByClassName(Mobilebone.classMask)[0];
|
674 |
| - if (ele_mask && ele_mask.style.visibility != "hidden") { return; } |
| 667 | + if (ele_mask && ele_mask.style.visibility != "hidden") { |
| 668 | + event.preventDefault(); |
| 669 | + return false; |
| 670 | + } |
675 | 671 |
|
676 | 672 | // if captureLink
|
677 | 673 | var capture = (Mobilebone.captureLink == true);
|
|
0 commit comments