DEV Community

Mohamed Boussaid
Mohamed Boussaid

Posted on

 

A 1KB javascript library for DOM manipulation

Hello every one in this post we will learn how to use Qjs (Query js) which is a minimal javascript library to manipulate dom
and this is how to get started with this library

Q.query

<div>
  <input type="text" />
</div>
Enter fullscreen mode Exit fullscreen mode
Q.query('input').get() /// returns input element
// Note query returns the first element
Enter fullscreen mode Exit fullscreen mode

Q.queryAll

 <div>first div</div>
 <div>second div</div>
Enter fullscreen mode Exit fullscreen mode
 Q.queryAll('div').get() /// returns all div elements first div + second div
 Q.queryAll('div').get(1) // returns first div element
 Q.queryAll('div').get(2) /// returns second div element
Enter fullscreen mode Exit fullscreen mode

Q.id

 <input id="username" type="text" />

Enter fullscreen mode Exit fullscreen mode
Q.id('username').get() /// returns input element
Enter fullscreen mode Exit fullscreen mode

Q.className

<div class="first-container"></div>
<div class="second-container"></div>
Enter fullscreen mode Exit fullscreen mode
Q.className('first-container').get() /// returns first container element
Q.className('second-container').get() /// returns second container
Enter fullscreen mode Exit fullscreen mode

Q.tagName

<div class="first-container"></div>
<div class="second-container"></div>
Enter fullscreen mode Exit fullscreen mode
Q.tagName('div').get() /// returns array of div elements
Q.tagName('div').get(1) /// returns first container element
Q.tagName('div').get(2) /// returns second container
Enter fullscreen mode Exit fullscreen mode

Q.attr

<div data-title="first">first div</div>
<div data-title="second">second div</div>

Enter fullscreen mode Exit fullscreen mode
Q.attr('data-title').get() /// returns array of elements which have data-title attribute
Q.attr('data-title').get(1) /// returns first div
Q.attr('data-title').get(2) /// returns second div
Q.attr('data-title','first').get() /// returns the element which have data-title attribute and 'first' as value (first div element)
Q.attr('data-title','second').get() /// returns the element which have data-title attribute and 'second' as value (second div)
Enter fullscreen mode Exit fullscreen mode

i'm open for any feedback or suggestions

Q.js github repository

Top comments (0)

Visualizing Promises and Async/Await 🤯

async await

Learn the ins and outs of Promises and Async/Await!