Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
@dadajam4/scroller
Advanced tools
本モジュールは大きく2つの機能を提供します。
Scrollerクラス DOM要素(DocumentElement含む)のスクロール情報を検知したり、スムーススクロールさせるためのクラスモジュールです。 ブラウザJS、Node.jsの両環境でユニバーサルに動作します。(Node.js上では処理がキャンセルされます) そのためSPAサービス等にそのまま組み込んで利用する事が可能です。 また、TypeScriptの型情報を併せ持つため、TypeScriptプロジェクトにおいて型情報を利用したコーディングが可能です。
スムーススクロール系メソッド root要素(document.scrollingElement)、もしくは任意のElementにおいてスムーススクロールさせるためのメソッドです。 これら全てのメソッドはScrollerクラスに含まれていますが、「スクロールだけを行えれば良い」場合こちらを直接利用します。
npm install @dadajam4/scroller --save
Scrollerクラスにおいて自身のスクロール領域のリサイズを検知するためにResizeObserverを利用します。(※スムーススクロール系メソッドでは必要ありません)未対応ブラウザにおいてはresize-observer-polyfillの利用をお勧めします。
import ResizeObserver from 'resize-observer-polyfill';
if (typeof window !== 'undefined' && !window.ResizeObserver) {
window.ResizeObserver = ResizeObserver;
}
import ResizeObserver from 'resize-observer-polyfill';
if (typeof window !== 'undefined' && !(window as any).ResizeObserver) {
(window as any).ResizeObserver = ResizeObserver;
}
import Scroller from '@dadajam4/scroller';
// Elementを未指定、かつブラウザ上である場合は
// ducument.scrollingElement が自動設定されます。
const scroller = new Scroller();
scroller.on('scrollEnd', e => {
console.log(e.totalAmmount);
});
SomeVueComponent = Vue.extend({
data() {
return {
innerScrollTop: 0,
// ...and more observable keys
}
},
computed: {
scrollTop: {
get() { return this.innerScrollTop },
set(scrollTop) {
this.innerScrollTop = scrollTop;
// >>> some actions...
},
},
// ...and more observable keys
},
methods: {
toElement(queryString) {
this._scroller.toElement(queryString);
},
},
created() {
this._scroller = new Scroller(this.$el);
this._scroller.observe(this);
},
beforeDestroy() {
this._scroller.destroy();
delete this._scroller;
},
});
// 必要に応じてメソッドをimportします
import {
scrollBy,
scrollTo,
scrollToElement,
scrollToSide,
scrollToTop,
scrollToRight,
scrollToBottom,
scrollToLeft,
scrollToLeftTop,
scrollToLeftBottom,
scrollToRightTop,
scrollToRightBottom,
} from '@dadajam4/scroller';
const result = scrollToElement('#some-element');
result.promise.then(() => {
// >>> スクロール完了後の処理,,,
});
FAQs
Service for DOM Element Scroll.
The npm package @dadajam4/scroller receives a total of 7 weekly downloads. As such, @dadajam4/scroller popularity was classified as not popular.
We found that @dadajam4/scroller demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.