npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

ms-dropdown

v4.0.3

Published

Convert your all select to image dropdown.

Downloads

735

Readme

Help

v4.0.3 update: 13 Oct, 2021

  • Fixed bootstrap modal issue

v4.0.2 update: 21 Sep, 2021

  • Safari blue border on focus removed
  • selectedIndex can be set as an array if "<select>" is multiple.
    • Example: element.msDropdown.selectedIndex = [1, 4];
  • imagePosition:'right' is added. Default value is left.
  • showFilterAlways functionality is added.
  • Little bit code refactoring

v4.0.1 update: 15 Sep, 2021

  • Fixed List zIndex issue

v4.0 update: 09 Sep, 2021

  • Written in ES6 (class) Style
  • Remove jQuery dependency
  • Performance improvement
  • Reactive properties
  • 'required' attributes works too
  • 'required' message can be customized. Default is 'Please select an item from this list'
  • Works better than original dropdown, i guess :)

v3.5.2 updates: 13 July, 2013

  • height bug fixed.
  • multiple indexes can be set via object. ie. var oDropdown = $("#element").msDropdown().data("dd"); oDropdown.set("selectedIndex", [1,4]);
  • checkbox selection is fixed when setting index via object.
  • css .arrow class is changed to .ddArrow (it was too common)

v3.5.1 updates:

  • (used for my personal project - did not get the chance to update - Sorry!)

v3.5 updates: 3 June, 2013

  • conflict edit in source js file fixed
  • autofilter is now configurable - it can be enable/disable by setting params or data-enableautofilter="true" attribute.
  • next/previous bug fixed when autofilter is on.
  • Bug fixed when item opens upward after autofilter.

v3.4 updates: 31 May, 2013

  • refresh method is back. you can refresh your dropdown to update the UI and value with the original dropdown or by the msdropdown object. i.e: $("#dropdownid").msDropdown().data("dd").refresh(); //or document.getElementById("dropdownid").refresh();
  • removed underscore from the all the variables and methods name - for the sake of jslint
  • reverseMode - reverseMode settings param is true... When you update your original dropdown it will update the msdropdown UI and value. This is usefull when you use knockoutjs or other library
  • Now you can set open direction to always down by settings params in settings or data {openDirection:"alwaysdown"}

v3.3 updates: 02 Feb, 2013

  • $.browser - jQuery 1.9 version fixed
  • Keyboard navigation issue has been fixed
  • destory is now destroy - oops typo error

v3.2 updates: 26 Nov, 2012

  • All setting parameters can passed throught element's data- attributes. ie. data-maincss="blue"
  • zIndex bug fixed for list and dropdown if both on the same page.
  • Added setIndexByValue method. However same can be done by - handler.set("value", value)
  • Added "append" and "prepend" in setting params. append is used to append the element to the childdiv and prepend do as the name suggest.
  • Added one more help file for objected oriented approach.

v3.1.1 updates:

  • chrome onchange bug fixed
  • zindex bug fixed for msie
  • add method bug fixed for msie

v3.1 updates:

  • Child width can be alter
  • New multiple is introduced. Its multiple but with the checkbox.
  • Bonus: elementname_mscheck will be posted along with the form post/get. i.e. if element name is "tech" checkbox tech_mscheck[] is created. However you can set the suffix using 'checkboxNameSuffix' parameter.

v3.0 updates:

The MIT License is recommended for most projects. It is simple and easy to understand, and it places almost no restrictions on what you can do with msDropDown.

If the GPL suits your project better, you are also free to use msDropDown under that license.

You don't have to do anything special to choose one license or the other, and you don't have to notify anyone which license you are using.