claviska/jquery-minicolors
在 GitHub 查看Top position is off when using 'position: top' with swatches
Open
#236 建立於 2017年11月23日
BugHelp Wanted
描述
When you use minicolors with swatches, combined with position: 'top left' or position:'top right', the colorpicker panel is positioned incorrectly, it overlays the input box.

I've made the following fix in jquery.minicolor.js, starting at line 212:
// Swatches
if(settings.swatches && settings.swatches.length !== 0) {
if (/top/.test(settings.position)) {
var nrRows = Math.ceil(settings.swatches.length / 7);
panel.css('top', (nrRows == 1 ? -182 : -204)+'px');
}
panel.addClass('minicolors-with-swatches');
....
Variable nrRows contains the number of rows of swatches (either 1 or 2), and the top position is changed accordingly. This fixes it for me. Hopefully you can apply this (or a similar) fix. Thanks, keep up the good work!