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 🙏

© 2024 – Pkg Stats / Ryan Hefner

basictable

v2.0.5

Published

Basic Table jQuery and Vanilla JS plugin for simple responsive tables.

Downloads

865

Readme

Basic Table

A simple lightweight jQuery or Vanilla JS responsive table library. A library to setup tables for a basic responsive table stucture. Utilizing the techniques of http://css-tricks.com/responsive-data-tables/. This is to assists in those situations where the users don't necessarily have access or capacity to modify HTML such as input from a WYSIWYG.

View Demo (jQuery)

View Demo (Vanilla JS)

jQuery User Notes for 2.0.0

The jQuery version remains the same as 1.0.0. While the source remains unchanged there are three things to note when upgrading:

  • Distribution files are no longer in the root directory, they've moved to /dist/js/jquery.basictable.js and /dist/js/jquery.basictable.min.js,
  • The non-minified version is now a beautified version rather than the source file, and
  • The minified version is no longer compressed with uglifyjs, it's compressed using Tercer.

These changes should have no impact on the way it functions in comparison with 1.x.

Getting Started

jQuery

Include the CSS and jQuery library in the <head> of your page.

<link rel="stylesheet" type="text/css" href="basictable.min.css" />

<script src="jquery.min.js"></script>
<script type="text/javascript" src="jquery.basictable.min.js"></script>

Initiate on any table(s) with:

$('table').basictable();

Vanilla JS

Include the CSS and basictable library in the <head> of your page.

<link rel="stylesheet" type="text/css" href="basictable.min.css" />

<script type="text/javascript" src="basictable.min.js"></script>

Initiate on any table(s) with:

new basictable('table');

Options

Options are applicable to both the jQuery and Vanilla JS.

breakpoint

integer default: null

Define the breakpoint (viewport's width) when the table will engage in responsive mode. If the containerBreakpoint is null (which is the default) the value will be 568px.

containerBreakpoint

integer default: null

Define the breakpoint of the table's container when the table will engage in responsive mode.

contentWrap

boolean default: true

Wraps the original content within the cell in a span with class .bt-content, to help with CSS selection.

forceResponsive

boolean default: true

The library will always force the table into responsive mode once the breakpoint is met. If this is set to false the table will only change mode when the table itself is larger than its immediate parent's inner width.

noResize

boolean default: false

Disable Basic Table's JS resize. The table won't engage in responsive mode unless media query or another resize bind outside of Basic Table is defined.

tableWrap

boolean default: false

When the library is initialize create a div wrapper around the table with class .bt-wrapper. This wrapper will toggle an active class when the table mode changes.

showEmptyCells

boolean default: false

When true, empty cells will be shown.

header

boolean default: true

Set to false if table does not have a header row. Table will just be responsive with table body and optional footer.

Methods (jQuery)

start

Engage the table in responsive mode. This method can only run after the table has been initialized.

$('table').basictable('start');

stop

Toggle the table back to normal mode, removing the responsive look. This does not destory the Basic Table data and wrappers. The table will still work once the breakpoint is met.

$('table').basictable('stop');

destroy

Destroy the the responsive bind on the table. This will remove all data and generated wrappers from the table, returning it to its initial state.

$('table').basictable('destroy');

restart

Run destroy, setup then check without resetting the table data. Run this if the table dynamically updates.

$('table').basictable('restart');

Methods (Vanilla JS)

Methods demonstrated assuming you've defined the object as table.

const table = new basictable('.table');

start

Engage the table in responsive mode. This method can only run after the table has been initialized.

table.start();

stop

Toggle the table back to normal mode, removing the responsive look. This does not destory the Basic Table data and wrappers. The table will still work once the breakpoint is met.

table.stop();

destroy

Destroy the the responsive bind on the table. This will remove all data and generated wrappers from the table, returning it to its initial state.

table.destroy();

restart

Run destroy, setup then check without resetting the table data. Run this if the table dynamically updates.

table.restart();