JSFiddle - React, Tailwind, and code Playground
JavaScript
jQuery(function ($) {
$.fn.quicksearch = function (opt) {
function is_empty(i)
{
return (i === null || i === undefined || i === false) ? true: false;
}
function strip_html(input)
{
var regexp = new RegExp(/\<[^\<]+\>/g);
var output = input.replace(regexp, "");
output = $.trim(output.toLowerCase().replace(/\n/, '').replace(/\s{2,}/, ' '));
return output;
}
function get_key()
{
var input = strip_html($('input[rel="' + options.randomElement + '"]').val());
if (input.indexOf(' ') === -1)
{
return input;
}
else
{
return input.split(" ");
}
}
function test_key(k, value, type)
{
if (type === "string")
{
return test_key_string(k, value);
}
else
{
return test_key_arr(k, value);
}
}
function test_key_string(k, value)
{
return (value.indexOf(k) > -1);
}
function test_key_arr(k, value)
{
for (var i = 0; i < k.length; i++) {
var test = value.indexOf(k[i]);
if (test === -1) {
return false;
}
}
return true;
}
function select_element(el)
{
if (options.hideElement === "grandparent")
{
return $(el).parent().parent();
}
else if (options.hideElement === "parent")
{
return $(el).parent();
}
else
{
return $(el);
}
}
function stripe(el)
{
if (doStripe)
{
var i = 0;
select_element(el).filter(':visible').each(function () {
for (var j = 0; j < stripeRowLength; j++)
{
if (i === j)
{
$(this).addClass(options.stripeRowClass[i]);
}
else
{
$(this).removeClass(options.stripeRowClass[j]);
}
}
i = (i + 1) % stripeRowLength;
});
}
}
function fix_widths(el)
{
$(el).find('td').each(function () {
$(this).attr('width', parseInt($(this).css('width')));
});
}
function loader(o) {
if (options.loaderId)
{
var l = $('input[rel="' +...