Axel Bocciarelli
24b34d3dea
fix scroll-end events not triggered
...
... when dragging the scrollbar to the end with the mouse.
2015-11-19 11:05:57 +11:00
DanielApt
e1910cde3e
use pageX/YOffset instead of scrollX/Y
...
As pointed out by @pliasetski these properties are not supported in IE11 and below
This fixes #409
2015-11-16 22:25:11 +00:00
DanielApt
bbf3d4db9f
Remove usages of scrollbarYTop and scrollbarXLeft
...
#390
2015-11-10 22:41:56 +00:00
DanielApt
3b134d6193
Fix broken drag scrolling when left is out of viewport
...
Related to #390
2015-11-09 23:11:33 +00:00
DanielApt
e9024292cd
Fix broken drag scrolling when top is out of viewport
...
Addresses issue no. 390 #390
2015-11-08 22:03:35 +00:00
TheBoef
e4dda6f408
Touchpad/Trackpad scrolling IE10+ and Edge
...
Right now you can't scroll with your touchpad/trackpad on a element that
has the perfect scrollbar in IE10+ and Edge.
By using the property '-ms-overflow-style' (Supported in IE10+ and Edge)
too hide the overflow instead of the default 'overflow' property, you
keep the scrolling with touchpad/trackpad functionality.
2015-10-14 23:59:19 +02:00
Hyunje Alex Jun
17e5f67519
Make selection scroll optional
...
It's not essential but rather causes several problems.
2015-10-03 21:37:24 +09:00
Hyunje Alex Jun
002034fd54
Return an Array object from class.list
...
To fix #383
2015-10-03 21:21:56 +09:00
Hyunje Alex Jun
c285521caa
Lint update-scroll.js
...
With the new .eslintrc
2015-10-03 20:45:38 +09:00
DanielApt
a0d39e1b49
Make sure scroll is at the start/end when the reach start/end event fires
2015-09-29 15:28:58 +01:00
DanielApt
0b8fe0ac0b
Dispatch events when reaching start / end of axes
2015-09-28 11:08:59 +01:00
DanielApt
3b90c734e4
Dispatch custom scroll events with new updateScroll function
2015-09-23 20:49:37 +01:00
Hyunje Alex Jun
51f33a44b5
Remove unused garbage rails before append a new one.
...
This patch fixes #376 .
2015-08-18 03:51:12 +09:00
Hyunje Alex Jun
8eac54d49f
Add a queryChildren method to dom.js
2015-08-18 03:26:15 +09:00
Hyunje Alex Jun
ed4e335978
Declare a module object DOM in dom.js
...
To refer in the sibling methods.
2015-08-18 03:23:27 +09:00
srcn
f200bea4cc
add shift+space support for keyboard
2015-08-17 15:19:30 +03:00
Dan Maglasang
158b113d18
Allow the clicking of a rail to propagate
2015-07-22 22:43:38 -04:00
Hyunje Alex Jun
6c642d8a47
Just early return instead of throwing an error for no instance.
2015-07-14 12:22:40 +09:00
Hyunje Alex Jun
f9f20eeb6f
Add null-check when updating or destroying an instance.
...
Throw an error when an instance is not found.
2015-07-07 15:25:16 +09:00
ahspw
3dbf20a5d0
perfect RTL support
2015-06-22 21:36:43 +09:00
dan
d6bd30f2da
IE touch device fix
...
Add vendor specific css for IE to handle let javascript handle touch events instead of letting css attempt to handle them. Without this CSS property IE touch devices do not work.
2015-06-16 15:43:00 -04:00
Hyunje Alex Jun
fc28ceb4ea
Stop propagating click event through scrollbar rails.
...
Fixes #326 .
2015-04-29 13:08:03 +09:00
Hyunje Alex Jun
ca4d835129
Simplify parseInt.
...
Because `~~` isn't necessarily faster than `parseInt` in every browser.
Now I think it'd be better to make it readable and simple.
2015-04-15 21:41:11 +09:00
Claus Augusti
de32082a62
changed the toInt()'s function behavior so that it returns 0 on empty strings
2015-04-15 13:56:38 +02:00
Jaron Kennel
a40ab40695
Fix clicking and dragging the scrollbar rails with large margin values.
...
Fix initial rail height/width calculation: Set the rails to display:block temporarily to correctly calculate percentage margins
Account for scrolltop/left on the document.
2015-04-13 13:12:00 -04:00
Hyunje Alex Jun
a0b3754a0d
Lint.
...
Missing semicolon.
2015-04-11 02:24:49 +09:00
Hyunje Alex Jun
dc7b14d0e1
Consume mousewheel event when there's hovered textarea.
...
Only when it needs to be scrolled.
2015-04-11 02:16:37 +09:00
Jun
a5aab04264
Merge pull request #309 from DanielApt/remove-patch
...
Check if parentNode exists
2015-04-08 18:53:16 +09:00
DanielApt
aca7683de1
Change tab size to 2
2015-04-02 10:18:46 +01:00
Hyunje Alex Jun
e4b21c7069
Remove -ms-filter for opacity.
...
The plugin doesn't support old IEs.
2015-04-02 01:12:44 +09:00
DanielApt
bb58ab98e3
Fix failing test
2015-03-27 18:28:51 +00:00
DanielApt
633f1f53d3
Check if parentNode exists
...
We need to check if parentNode exists, as in some scenarios it does not (e.g. phantomjs < 2)
2015-03-27 16:58:10 +00:00
Hyunje Alex Jun
4a7f27356a
Change the way to re-attach rails when they're detached.
...
Instead of destroying and re-initialising the plugin, just re-append
them.
2015-03-11 22:07:14 +09:00
Sergey Bondarenko
cbdf812de8
Issue #296 has been fixed
2015-03-05 14:41:12 +02:00
Hyunje Alex Jun
c280c270b8
Merge pull request #287 from DanielApt/nojs-fallback
...
No longer require to manually add overflow:hidden, plugin does this. [#285 ]
2015-02-22 19:16:43 +01:00
Rupert Angermeier
42cf8d3679
Adapt fallback for selection
...
Thanks @darthmaim for pointing this out
2015-02-19 16:31:27 +01:00
DanielApt
6af7500d6b
Hide overflow only on .ps-container
2015-02-18 16:17:42 +00:00
Rupert Angermeier
8290c4f726
Fix issue with false selection detection
...
`selection.rangeCount` will return 1 when user is typing something in a
form widget. This will consequently trigger unvoluntary scrolling when
the mouse is moved outside of scrollable area. Checking the actual
length of selected text doesn't trigger this behaviour.
2015-02-18 13:34:36 +01:00
Hyunje Alex Jun
b4a51fc454
Hide scrollbars only when updated manually.
...
Resolve #283 .
2015-02-17 01:46:13 +00:00
Hyunje Alex Jun
a12def5213
Fix typo in dom.matches
2015-02-17 01:28:33 +00:00
Hyunje Alex Jun
c4790bb656
Add IE support for dataset.
...
IE doesn't support dateset, so use a raw `data-ps-id`
attribute.
2015-02-17 01:26:44 +00:00
Hyunje Alex Jun
11997131f4
Add AMD support.
2015-02-12 18:45:04 +00:00
Hyunje Alex Jun
ab40b55c8f
Add CommonJS support for the jQuery adaptor.
2015-02-12 18:25:17 +00:00
Hyunje Alex Jun
68d468c465
Add NPM and CommonJS compatibility.
2015-02-11 17:00:48 +00:00
Hyunje Alex Jun
81dd8e9eb0
Add a guard to check if activeElement exists.
2015-02-11 16:00:19 +00:00
Hyunje Alex Jun
b5d0958e82
If scrollbar's detached, reinitialise the plugin in update.
2015-02-11 16:00:19 +00:00
Hyunje Alex Jun
c8fe0b9269
Add missing updates in handlers.
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
b000c771af
Fix typo in touch handler.
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
a52a945226
Modularise handlers.
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
0acf3602f0
Fix RTL outer width problem.
...
`offsetWidth` doesn't work for hidden elements.
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
89c3bdb1cf
Fix typos.
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
ee455fafa5
Implement adaptors.
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
6f5a9088aa
Replace $.contains with Node.contains
...
Now completely independent from jQuery.
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
f8b20a9fc9
Fix typo in helper.removePsClasses
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
70acad4941
Implment a native event manager.
...
Now we're about to be independent from jQuery!
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
95540bdd9e
Change to eslint from jshint.
...
It's way better. Original files have been linted.
2015-02-11 15:53:42 +00:00
Hyunje Alex Jun
fa7e169b9f
Separate initialize, update and destroy functions.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
7ab6c5e5ef
Fix a CSS bug that an unwanted scrollbar appears.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
427284337f
Separate $.one event handler.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
bbab2a3c53
Separate env helpers.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
aa58a8298e
Remove variable cleaning.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
1541f73add
More independent.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
ff5ca3d804
Remove includePadding
option.
...
It's supported by default.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
3f002c49a1
Remove $this.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
a496ff1a75
Make DOM manipulation independent from jQuery.
2015-02-11 15:53:41 +00:00
Hyunje Alex Jun
9a89e73cf9
Separate event class factory module.
2015-02-11 15:53:40 +00:00
Hyunje Alex Jun
6d1f558c02
Separate a class module.
2015-02-11 15:53:40 +00:00
Hyunje Alex Jun
339e478674
Separate main.js into some modules.
...
Helper functions and the plugin function are separated.
2015-02-11 15:53:40 +00:00
Hyunje Alex Jun
74fc0daf49
Use browserify.
2015-02-11 15:53:17 +00:00
Hyunje Alex Jun
804d94d3a0
Migrate into Gulp.
2015-02-11 15:53:08 +00:00
Hyunje Alex Jun
2fc41e7045
Add a guard to check if activeElement exists.
2015-02-05 19:18:35 +00:00
Hyunje Alex Jun
bd22fc0e58
2014 -> 2015.
...
Happy new year!
2015-01-08 17:36:54 +00:00
DanielApt
373838d825
Define the used colors as variables
2014-12-16 13:21:16 +00:00
Hyunje Alex Jun
b927c177ca
Change how .in-scrolling
works.
...
Now we add `.ps-in-scrolling` class in a container div.
`pointer-events: none;` is also added for the class.
2014-12-09 23:57:52 +00:00
Hyunje Alex Jun
20576ac717
Merge pull request #252 from tkhyn/master
...
Detects margins around the rails
2014-12-02 11:34:07 +00:00
Hyunje Alex Jun
7ce708216d
Small style fixes for preventDefault functions.
2014-12-02 11:24:36 +00:00
DI-john
931be25635
propagate mobile swipe gestures to page where appropriate
2014-12-02 11:00:37 +00:00
Thomas Khyn
74d0fcb1de
Detects margins around the rails
2014-11-17 14:18:37 +13:00
tatarinov
a94df46fe3
Removed unnecessary semicolon
2014-11-14 10:25:19 +04:00
tatarinov
20053e9cf1
Renamed 'int' helper in 'getInt' #250
2014-11-14 10:04:07 +04:00
Hyunje Alex Jun
e9fcc0f02a
Temporary fix for mousewheel problem of select in FF and IE.
...
Resolve #247 .
2014-11-11 13:29:09 +00:00
Alexandr Subbotin
05b20f45ef
decrease mouse handlers count and every-time class checking during mousemove
2014-11-11 13:28:58 +00:00
Hyunje Alex Jun
1849e64122
Remove remaining inline display style.
...
It caused regression bugs.
2014-11-05 18:51:52 +00:00
Hyunje Alex Jun
f9c3dc0b20
Change name of variable breakingProcess
.
...
It's too ambiguous to understand the purpose of the variable.
2014-10-31 19:25:43 +00:00
Hyunje Alex Jun
aa92487ed3
Clear intervals if the plugin is destroyed.
2014-10-31 19:25:13 +00:00
Hyunje Alex Jun
d24f9bd41b
Use scss for stylesheet.
...
We can build the scss source to .css and .min.css files with the
`grunt build` command.
2014-10-31 02:20:22 +00:00
Konrad Liebig
94be67d998
Don't handle mouse pointer events as touch in IE10
2014-10-30 17:04:20 +01:00
Hyunje Alex Jun
f099448e44
Change how scrollbar rails are being hidden.
...
Inline CSS change is bad practice.
2014-10-28 18:01:23 +00:00
Hyunje Alex Jun
d0b97e4039
Add selection handler.
...
Now perfect-scrollbar supports scrolling by selection.
2014-10-28 17:49:16 +00:00
Hyunje Alex Jun
f2342f2678
Change the way to handle event class name.
...
Use factory pattern to handle it, instead of using + operator of
string.
2014-10-28 16:41:36 +00:00
Hyunje Alex Jun
967c30a5e4
Shouldn't prevent default for touchStart.
...
Default touch event shouldn't be prevented.
2014-10-28 14:33:07 +00:00
Hyunje Alex Jun
7dd6335965
Filter touch events not to be handled.
...
In IE 10/11, MSPointer event is fired by mouse. It shouldn't be handled.
Also, Exception has occurred with event.targetTouches, and this commit
fixed it too.
2014-10-24 12:03:55 +01:00
Fedor
3dde3ebb0c
Correction for railBorderYWidth calculation
2014-10-22 17:09:45 +04:00
Hyunje Alex Jun
991e664b18
Stop propagation and prevent default for touch events.
...
Fix #228 .
2014-10-21 21:14:23 +01:00
Hyunje Alex Jun
ee4fc96b7a
Bind touch handlers only when it's supported.
...
Fix #227 .
2014-10-21 21:06:16 +01:00
Hyunje Alex Jun
65869821c1
Use > CSS selector.
...
This patch will resolve inner scrollbar problems.
2014-10-21 20:53:55 +01:00
Nicolás Moncada
6ac02fae2b
It makes compatible with iframes.
2014-10-14 01:11:06 +01:00
Hyunje Alex Jun
d4ec7fca6d
Merge pull request #219 from MathieuLorber/input-in-shadowdom
...
ShadowDom form elements are considered for preventing scrolling by keyevent
2014-10-14 01:46:03 +02:00
Hyunje Alex Jun
1b1195288b
Add ctrl key support for keyboard handler.
...
Originally written by @wikenator.
2014-10-14 00:29:51 +01:00
loliver
e6590da884
IE Pointer Events
...
Added support for PointerEvents (and MSPointerEvents) to support touch
in IE10 and 11.
Modified by @noraesae.
2014-10-14 00:13:04 +01:00