-
Notifications
You must be signed in to change notification settings - Fork 165
Scrolling options list #9
Comments
Hello @djrees, I'm trying to replicate the issue that you're having and I haven't had any luck. Can you explain a little more about the problem you're running into, or setup a jsfiddle to demonstrate the issue? Maybe even a screenshot / screencast would be great! |
Hey @djrees, are you referring to trying to grab the scroll bar with the mouse and drag the scroll bar itself up and down vs. using a trackpad or mouse wheel? |
Yes, sorry - I should have been more explicit. Clicking the scroll bar to trying to drag it up or down causes the .options ul to hide. |
Yes, i can confirm the bug. When clicking on "scrollbar" of the in a long option list, it hides the option list as if you clicked somewhere outside. |
Noticing this, too. Any thoughts on a fix, anyone? |
I've got something in the works, just haven't had a chance to finish it up yet. Stay tuned! |
I've noticed that it works just fine until you actually scroll the page. If you haven't scrolled when touching the scollbars inside the dropdown it works just fine. As soon as you have scrolled anywhere, no matter how little, it breaks. Hope this helps. |
I can also confirm this bug and I'm really looking forward to a fix. I tried some workarounds but concluded the bug was to heavy to be easily fixed |
@rawksteady , i am able to reproduce the error without scrolling anywhere else. Tested it on google chrome. |
The problem is with Quick solution:
trigger.on('close', function() {
trigger.removeClass('open');
return options.removeClass('open');
}); CHANGE TO: trigger.on('close', function() {
var parent = sel.parent();
if(!parent.is(':hover') || (parent.is(':hover') && clicked)) {
clicked = false;
trigger.removeClass('open');
return options.removeClass('open');
}
});
sel.parent().on('mouseout', function() {
sel.trigger('focus');
}); options.on('click', 'li', function(e) {
options.find('.selected').removeClass('selected');
$(e.currentTarget).addClass('selected');
return sel.val($(this).data('value')).trigger('change').trigger('blur').trigger('focus');
}); CHANGE TO: options.on('click', 'li', function(e) {
options.find('.selected').removeClass('selected');
$(e.currentTarget).addClass('selected');
clicked = true;
return sel.val($(this).data('value')).trigger('change').trigger('blur').trigger('focus');
}); |
@br2br IIRC, something similar to this method caused a bunch of Android problems. If you can submit a pull request with the changes in the coffee file, I can take a look though. EDIT: Also, dude. You can use ``` code fences to get highlighting and formatting. I updated your comment for you. |
Sorry, but I'm not using github and don't know how to pull request. P.S. thanks for formating! |
@br2br Thank you for the snippets, will work for me nicely until this is properly fixed! |
Thanks for the solution! It saved me a lot of time, rather than trying to figure things out for myself. |
Hello, has the updated code above seeming to solve the scrollbar-issue been pushed to the GIT version yet? |
I can confirm that I too have this issue - a scrollbar appears for the dropdown list, and using the mousewheel I can scroll to the correct option. However, using the scrollbar by clicking on it causes the dropdown menu to disappear. Ths is in the latest stable release of Google Chrome on Windows 7. |
This is not fixed yet, right? |
I fixed like this, but I don't know if it's a good solution:
|
i have tried the updated fancySelect.js |
Hey,
Thanks for the plugin, it's really useful :)
When setting a height on the .options unordered list, the scroll bars show and everything looks good - but trying to use the scroll bars cause the .option to be dismissed.
Its working fine in Chrome & Firefox, but it's broken on Safari (desktop) and IE7-10.
Any idea's why this might be happening?
Thanks!
The text was updated successfully, but these errors were encountered: