Code cleanup (#120)

* Lots of code cleanup

* Cleanup parse-options tests
  - Rename objects for clarity and inline unneeded objects
  - Remove unneeded tests
  - Use Object.keys().length instead of a custom function
  - Use typeof === "object" instead of a custom function that checks the prototype tree as well, since we don't expect anything but an object literal.

* Remove old switchFallback code

* Remove polyfill for Function.prototype.bind

* Inline small functions

* Add more documentation and tests for options.currentUrlFullReload
  Closes #17

* Update package.json
This commit was merged in pull request #120.
This commit is contained in:
BehindTheMath
2018-02-02 09:52:44 -05:00
committed by GitHub
parent 57aed828ac
commit a72880d205
26 changed files with 276 additions and 359 deletions

View File

@@ -4,7 +4,7 @@ module.exports = function(els, events, opts) {
events = (typeof events === "string" ? events.split(" ") : events)
events.forEach(function(e) {
var event // = new CustomEvent(e) // doesn't everywhere yet
var event
event = document.createEvent("HTMLEvents")
event.initEvent(e, true, true)
event.eventName = e
@@ -17,8 +17,8 @@ module.exports = function(els, events, opts) {
forEachEls(els, function(el) {
var domFix = false
if (!el.parentNode && el !== document && el !== window) {
// THANKS YOU IE (9/10//11 concerned)
// dispatchEvent doesn't work if element is not in the dom
// THANK YOU IE (9/10/11)
// dispatchEvent doesn't work if the element is not in the DOM
domFix = true
document.body.appendChild(el)
}