From c4f24d99461abb73a533c7f9dc91bfa919d994f5 Mon Sep 17 00:00:00 2001 From: Georgy Marchuk Date: Fri, 2 Nov 2018 17:34:03 +0100 Subject: [PATCH] fix sending values of select tags with GET method --- dist/swup.js | 3 ++- dist/swup.min.js | 2 +- package.json | 2 +- src/index.js | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/dist/swup.js b/dist/swup.js index 7d2e7765..6455568e 100644 --- a/dist/swup.js +++ b/dist/swup.js @@ -528,6 +528,7 @@ var Swup = function () { value: function linkClickHandler(event) { // no control key pressed if (!event.metaKey) { + // index of pressed button needs to be checked because Firefox triggers click on all mouse buttons if (event.button === 0) { this.triggerEvent('clickLink', event); var link = new _Link2.default(); @@ -646,7 +647,7 @@ var Swup = function () { } else { // create base url var url = link.getAddress() || window.location.href; - var inputs = form.querySelectorAll('input'); + var inputs = form.querySelectorAll('input, select'); if (url.indexOf('?') == -1) { url += "?"; } else { diff --git a/dist/swup.min.js b/dist/swup.min.js index 0c145faa..2cc22b80 100644 --- a/dist/swup.min.js +++ b/dist/swup.min.js @@ -1 +1 @@ -(function e(t,n){if(typeof exports==="object"&&typeof module==="object")module.exports=n();else if(typeof define==="function"&&define.amd)define([],n);else if(typeof exports==="object")exports["Swup"]=n();else t["Swup"]=n()})(window,function(){return function(e){var t={};function n(o){if(t[o]){return t[o].exports}var i=t[o]={i:o,l:false,exports:{}};e[o].call(i.exports,i,i.exports,n);i.l=true;return i.exports}n.m=e;n.c=t;n.d=function(e,t,o){if(!n.o(e,t)){Object.defineProperty(e,t,{enumerable:true,get:o})}};n.r=function(e){if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(e,"__esModule",{value:true})};n.t=function(e,t){if(t&1)e=n(e);if(t&8)return e;if(t&4&&typeof e==="object"&&e&&e.__esModule)return e;var o=Object.create(null);n.r(o);Object.defineProperty(o,"default",{enumerable:true,value:e});if(t&2&&typeof e!="string")for(var i in e)n.d(o,i,function(t){return e[t]}.bind(null,i));return o};n.n=function(e){var t=e&&e.__esModule?function t(){return e["default"]}:function t(){return e};n.d(t,"a",t);return t};n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};n.p="";return n(n.s=1)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var o=function(){function e(e,t){for(var n=0;n1&&arguments[1]!==undefined?arguments[1]:false;var n={url:window.location.pathname+window.location.search,method:"GET",data:null};var i=o({},n,e);var r=new XMLHttpRequest;r.onreadystatechange=function(){if(r.readyState===4){if(r.status!==500){t(r.responseText,r)}else{t(null,r)}}};r.open(i.method,i.url,true);r.setRequestHeader("X-Requested-With","swup");r.send(i.data);return r}},function(e,t,n){"use strict";e.exports=function(e,t){var n=this;var o=e.replace("","");var i=document.createElement("div");i.innerHTML=o;var r=[];for(var s=0;s2&&arguments[2]!==undefined?arguments[2]:this.options.animateScroll;var i=1-this.options.scrollFriction;var r=this.options.scrollAcceleration;var s=0;var a=0;var l=0;var u=0;var c=0;var d=null;function f(){return document.body.scrollTop||document.documentElement.scrollTop}var h=function e(){var t=p();m();if(c===1&&l>s||c===-1&&lt?-1:1;u=t+c;l=t;a=0;if(s!=l){h()}else{n.triggerEvent("scrollDone")}};this.triggerEvent("scrollStart");if(o==0){window.scrollTo(0,t);this.triggerEvent("scrollDone")}else{v(t)}}},function(e,t,n){"use strict";e.exports=function(e){var t=e.toString().toLowerCase().replace(/\s+/g,"-").replace(/\//g,"-").replace(/[^\w\-]+/g,"").replace(/\-\-+/g,"-").replace(/^-+/,"").replace(/-+$/,"");if(t[0]=="/")t=t.splice(1);if(t=="")t="homepage";return t}},function(e,t,n){"use strict";e.exports=function(e){if(this.options.scroll&&(!e||this.options.animateHistoryBrowsing)){if(this.scrollToElement!=null){var t=document.querySelector(this.scrollToElement);if(t!=null){var n=t.getBoundingClientRect().top+window.pageYOffset;this.scrollTo(document.body,n)}else{console.warn("Element for offset not found ("+this.scrollToElement+")")}this.scrollToElement=null}else{this.scrollTo(document.body,0)}}}},function(e,t,n){"use strict";e.exports=function(e){var t=this;var n=0;for(var o=0;o-1){this._handlers[t].splice(r,1)}}else{console.warn("Handler for event '"+t+"' no found.")}}else{this._handlers[t]=[]}}else{Object.keys(this._handlers).forEach(function(e){o._handlers[e]=[]})}}},function(e,t,n){"use strict";e.exports=function(e,t,n){if(e=="/"){e="/homepage"}if(t=="/"){t="/homepage"}this.transition={from:e.replace("/",""),to:t.replace("/","")};if(n){this.transition.custom=n}}},function(e,t,n){"use strict";var o=n(0);var i=r(o);function r(e){return e&&e.__esModule?e:{default:e}}e.exports=function(e){var t=this;var n=new i.default;n.setPath(e);if(n.getAddress()!=this.currentUrl&&!this.cache.exists(n.getAddress())&&this.preloadPromise==null){this.getPage({url:n.getAddress()},function(e,o){if(o.status===500){t.triggerEvent("serverError");return}else{var i=t.getDataFromHtml(e,o);if(i!=null){i.url=n.getAddress();t.cache.cacheUrl(i,t.options.debugMode);t.triggerEvent("pagePreloaded")}}})}}},function(e,t,n){"use strict";e.exports=function(){var e=this;if(this.options.preload){document.querySelectorAll("[data-swup-preload]").forEach(function(t){e.preloadPage(t.href)})}}},function(e,t,n){"use strict";e.exports=function(e,t){var n=this;t=Object.assign({},e.options,t);e.options=t;var o=function e(){var t=n.cache.getPage(window.location.pathname+window.location.search);var o=document.createElement("html");o.innerHTML=t.originalContent;return o};this.plugins.push(e);e.exec(t,this,o);return this.plugins}},function(e,t,n){"use strict";e.exports=function(e){if(this.options.debugMode){console.log(e+"%c","color: #009ACD")}}}])}); \ No newline at end of file +(function e(t,n){if(typeof exports==="object"&&typeof module==="object")module.exports=n();else if(typeof define==="function"&&define.amd)define([],n);else if(typeof exports==="object")exports["Swup"]=n();else t["Swup"]=n()})(window,function(){return function(e){var t={};function n(o){if(t[o]){return t[o].exports}var i=t[o]={i:o,l:false,exports:{}};e[o].call(i.exports,i,i.exports,n);i.l=true;return i.exports}n.m=e;n.c=t;n.d=function(e,t,o){if(!n.o(e,t)){Object.defineProperty(e,t,{enumerable:true,get:o})}};n.r=function(e){if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(e,"__esModule",{value:true})};n.t=function(e,t){if(t&1)e=n(e);if(t&8)return e;if(t&4&&typeof e==="object"&&e&&e.__esModule)return e;var o=Object.create(null);n.r(o);Object.defineProperty(o,"default",{enumerable:true,value:e});if(t&2&&typeof e!="string")for(var i in e)n.d(o,i,function(t){return e[t]}.bind(null,i));return o};n.n=function(e){var t=e&&e.__esModule?function t(){return e["default"]}:function t(){return e};n.d(t,"a",t);return t};n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};n.p="";return n(n.s=1)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var o=function(){function e(e,t){for(var n=0;n1&&arguments[1]!==undefined?arguments[1]:false;var n={url:window.location.pathname+window.location.search,method:"GET",data:null};var i=o({},n,e);var r=new XMLHttpRequest;r.onreadystatechange=function(){if(r.readyState===4){if(r.status!==500){t(r.responseText,r)}else{t(null,r)}}};r.open(i.method,i.url,true);r.setRequestHeader("X-Requested-With","swup");r.send(i.data);return r}},function(e,t,n){"use strict";e.exports=function(e,t){var n=this;var o=e.replace("","");var i=document.createElement("div");i.innerHTML=o;var r=[];for(var s=0;s2&&arguments[2]!==undefined?arguments[2]:this.options.animateScroll;var i=1-this.options.scrollFriction;var r=this.options.scrollAcceleration;var s=0;var a=0;var l=0;var u=0;var c=0;var d=null;function f(){return document.body.scrollTop||document.documentElement.scrollTop}var h=function e(){var t=p();m();if(c===1&&l>s||c===-1&&lt?-1:1;u=t+c;l=t;a=0;if(s!=l){h()}else{n.triggerEvent("scrollDone")}};this.triggerEvent("scrollStart");if(o==0){window.scrollTo(0,t);this.triggerEvent("scrollDone")}else{v(t)}}},function(e,t,n){"use strict";e.exports=function(e){var t=e.toString().toLowerCase().replace(/\s+/g,"-").replace(/\//g,"-").replace(/[^\w\-]+/g,"").replace(/\-\-+/g,"-").replace(/^-+/,"").replace(/-+$/,"");if(t[0]=="/")t=t.splice(1);if(t=="")t="homepage";return t}},function(e,t,n){"use strict";e.exports=function(e){if(this.options.scroll&&(!e||this.options.animateHistoryBrowsing)){if(this.scrollToElement!=null){var t=document.querySelector(this.scrollToElement);if(t!=null){var n=t.getBoundingClientRect().top+window.pageYOffset;this.scrollTo(document.body,n)}else{console.warn("Element for offset not found ("+this.scrollToElement+")")}this.scrollToElement=null}else{this.scrollTo(document.body,0)}}}},function(e,t,n){"use strict";e.exports=function(e){var t=this;var n=0;for(var o=0;o-1){this._handlers[t].splice(r,1)}}else{console.warn("Handler for event '"+t+"' no found.")}}else{this._handlers[t]=[]}}else{Object.keys(this._handlers).forEach(function(e){o._handlers[e]=[]})}}},function(e,t,n){"use strict";e.exports=function(e,t,n){if(e=="/"){e="/homepage"}if(t=="/"){t="/homepage"}this.transition={from:e.replace("/",""),to:t.replace("/","")};if(n){this.transition.custom=n}}},function(e,t,n){"use strict";var o=n(0);var i=r(o);function r(e){return e&&e.__esModule?e:{default:e}}e.exports=function(e){var t=this;var n=new i.default;n.setPath(e);if(n.getAddress()!=this.currentUrl&&!this.cache.exists(n.getAddress())&&this.preloadPromise==null){this.getPage({url:n.getAddress()},function(e,o){if(o.status===500){t.triggerEvent("serverError");return}else{var i=t.getDataFromHtml(e,o);if(i!=null){i.url=n.getAddress();t.cache.cacheUrl(i,t.options.debugMode);t.triggerEvent("pagePreloaded")}}})}}},function(e,t,n){"use strict";e.exports=function(){var e=this;if(this.options.preload){document.querySelectorAll("[data-swup-preload]").forEach(function(t){e.preloadPage(t.href)})}}},function(e,t,n){"use strict";e.exports=function(e,t){var n=this;t=Object.assign({},e.options,t);e.options=t;var o=function e(){var t=n.cache.getPage(window.location.pathname+window.location.search);var o=document.createElement("html");o.innerHTML=t.originalContent;return o};this.plugins.push(e);e.exec(t,this,o);return this.plugins}},function(e,t,n){"use strict";e.exports=function(e){if(this.options.debugMode){console.log(e+"%c","color: #009ACD")}}}])}); \ No newline at end of file diff --git a/package.json b/package.json index b293c724..e459b17b 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "swup", - "version": "1.7.5", + "version": "1.7.6", "description": "Animated page transitions with css.", "main": "lib/index.js", "scripts": { diff --git a/src/index.js b/src/index.js index c581e15c..0d366e08 100755 --- a/src/index.js +++ b/src/index.js @@ -391,7 +391,7 @@ export default class Swup { } else { // create base url let url = link.getAddress() || window.location.href - let inputs = form.querySelectorAll('input') + let inputs = form.querySelectorAll('input, select') if(url.indexOf('?') == -1) { url += "?" } else {