size-sensor
Advanced tools
Comparing version 0.2.2 to 0.2.3
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(e.sizeSensor={})}(this,function(e){"use strict";var t=1,n=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:30,n=null;return function(){for(var i=this,o=arguments.length,r=Array(o),u=0;u<o;u++)r[u]=arguments[u];clearTimeout(n),n=setTimeout(function(){e.apply(i,r)},t)}},i="undefined"!=typeof ResizeObserver?function(e){var t=void 0,i=[],o=n(function(){i.forEach(function(t){t(e)})}),r=function(){t.disconnect(),i=[],t=void 0};return{element:e,bind:function(n){t||(t=function(){var t=new ResizeObserver(o);return t.observe(e),o(),t}()),-1===i.indexOf(n)&&i.push(n)},destroy:r,unbind:function(e){var n=i.indexOf(e);-1!==n&&i.splice(n,1),0===i.length&&t&&r()}}}:function(e){var t=void 0,i=[],o=n(function(){i.forEach(function(t){t(e)})}),r=function(){t&&t.parentNode&&(t.contentDocument&&t.contentDocument.defaultView.removeEventListener("resize",o),t.parentNode.removeChild(t),t=void 0,i=[])};return{element:e,bind:function(n){t||(t=function(){"static"===getComputedStyle(e).position&&(e.style.position="relative");var t=document.createElement("object");return t.onload=function(){t.contentDocument.defaultView.addEventListener("resize",o),o()},t.setAttribute("style","display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1;opacity:0"),t.setAttribute("class","size-sensor-object"),t.type="text/html",e.appendChild(t),t.data="about:blank",t}()),-1===i.indexOf(n)&&i.push(n)},destroy:r,unbind:function(e){var n=i.indexOf(e);-1!==n&&i.splice(n,1),0===i.length&&t&&r()}}},o={},r=function(e){var n=e.getAttribute("size-sensor-id");if(n&&o[n])return o[n];var r=""+t++;e.setAttribute("size-sensor-id",r);var u=i(e);return o[r]=u,u};e.bind=function(e,t){var n=r(e);return n.bind(t),function(){n.unbind(t)}},e.clear=function(e){!function(e){var t=e.element.getAttribute("size-sensor-id");e.element.removeAttribute("size-sensor-id"),e.destroy(),t&&o[t]&&delete o[t]}(r(e))},Object.defineProperty(e,"__esModule",{value:!0})}); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(e.sizeSensor={})}(this,function(e){"use strict";var t=1,n=function(e){var t=void 0,n=[],i=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:60,n=null;return function(){for(var i=this,o=arguments.length,r=Array(o),u=0;u<o;u++)r[u]=arguments[u];clearTimeout(n),n=setTimeout(function(){e.apply(i,r)},t)}}(function(){n.forEach(function(t){t(e)})}),o=function(){t&&t.parentNode&&(t.contentDocument&&t.contentDocument.defaultView.removeEventListener("resize",i),t.parentNode.removeChild(t),t=void 0,n=[])};return{element:e,bind:function(o){t||(t=function(){"static"===getComputedStyle(e).position&&(e.style.position="relative");var t=document.createElement("object");return t.onload=function(){t.contentDocument.defaultView.addEventListener("resize",i),i()},t.setAttribute("style","display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1;opacity:0"),t.setAttribute("class","size-sensor-object"),t.type="text/html",e.appendChild(t),t.data="about:blank",t}()),-1===n.indexOf(o)&&n.push(o)},destroy:o,unbind:function(e){var i=n.indexOf(e);-1!==i&&n.splice(i,1),0===n.length&&t&&o()}}},i={},o=function(e){var o=e.getAttribute("size-sensor-id");if(o&&i[o])return i[o];var r=""+t++;e.setAttribute("size-sensor-id",r);var u=n(e);return i[r]=u,u};e.bind=function(e,t){var n=o(e);return n.bind(t),function(){n.unbind(t)}},e.clear=function(e){!function(e){var t=e.element.getAttribute("size-sensor-id");e.element.removeAttribute("size-sensor-id"),e.destroy(),t&&i[t]&&delete i[t]}(o(e))},e.ver="__VERSION__",Object.defineProperty(e,"__esModule",{value:!0})}); |
@@ -13,3 +13,3 @@ "use strict"; | ||
exports.default = function (fn) { | ||
var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 30; | ||
var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 60; | ||
@@ -16,0 +16,0 @@ var timer = null; |
@@ -6,3 +6,3 @@ 'use strict'; | ||
}); | ||
exports.clear = exports.bind = undefined; | ||
exports.ver = exports.clear = exports.bind = undefined; | ||
@@ -41,2 +41,4 @@ var _sensorPool = require('./sensorPool'); | ||
(0, _sensorPool.removeSensor)(sensor); | ||
}; | ||
}; | ||
var ver = exports.ver = '__VERSION__'; |
@@ -10,3 +10,3 @@ 'use strict'; | ||
var _resizeObserver = require('./resizeObserver'); | ||
// import { createSensor as createResizeObserverSensor } from './resizeObserver'; | ||
@@ -16,11 +16,11 @@ /** | ||
*/ | ||
/** | ||
* Created by hustcc on 18/7/5. | ||
* Contract: i@hust.cc | ||
*/ | ||
var createSensorFunc = function createSensorFunc() { | ||
return typeof ResizeObserver !== 'undefined' ? _resizeObserver.createSensor : _object.createSensor; | ||
}; | ||
return _object.createSensor; | ||
// 部分浏览器 ResizeObserver 出现 crash | ||
// return typeof ResizeObserver !== 'undefined' ? createResizeObserverSensor : createObjectSensor; | ||
}; /** | ||
* Created by hustcc on 18/7/5. | ||
* Contract: i@hust.cc | ||
*/ | ||
var createSensor = exports.createSensor = createSensorFunc(); |
{ | ||
"name": "size-sensor", | ||
"version": "0.2.2", | ||
"version": "0.2.3", | ||
"description": "DOM element size sensor which will callback when size changed.", | ||
@@ -33,2 +33,3 @@ "main": "lib/index.js", | ||
"babel-plugin-add-module-exports": "^0.2.1", | ||
"babel-plugin-version": "^0.2.1", | ||
"babel-preset-env": "^1.6.1", | ||
@@ -35,0 +36,0 @@ "cross-env": "^5.1.3", |
@@ -93,6 +93,6 @@ # size-sensor | ||
- `ResizeObserver`: use [resizeObserver](src/sensors/resizeObserver.js) to observe element's size. | ||
- ~~~`ResizeObserver`: ~~~use [resizeObserver](src/sensors/resizeObserver.js) to observe element's size.~~~ | ||
- `object`: use [object](src/sensors/object.js) document's resize event. | ||
If `ResizeObserver` exists, use it, else use `object` as default. | ||
~~~If `ResizeObserver` exists, use it, else use `object` as default.~~~ | ||
@@ -99,0 +99,0 @@ |
15047
11