document.documentElement.classList.remove( 'no-js' );
//escooterexpert.com/wp-includes/js/jquery/jquery.min.js
var image_save_msg='You are not allowed to save images!';
var no_menu_msg='Context Menu disabled!';
var smessage = "Content is protected !!";
function disableEnterKey(e)
{
var elemtype = e.target.tagName;
elemtype = elemtype.toUpperCase();
if (elemtype == "TEXT" || elemtype == "TEXTAREA" || elemtype == "INPUT" || elemtype == "PASSWORD" || elemtype == "SELECT" || elemtype == "OPTION" || elemtype == "EMBED")
{
elemtype = 'TEXT';
}
if (e.ctrlKey){
var key;
if(window.event)
key = window.event.keyCode; //IE
else
key = e.which; //firefox (97)
//if (key != 17) alert(key);
if (elemtype!= 'TEXT' && (key == 97 || key == 65 || key == 67 || key == 99 || key == 88 || key == 120 || key == 26 || key == 85 || key == 86 || key == 83 || key == 43 || key == 73))
{
if(wccp_free_iscontenteditable(e)) return true;
show_wpcp_message('You are not allowed to copy content or view source');
return false;
}else
return true;
}
}
/*For contenteditable tags*/
function wccp_free_iscontenteditable(e)
{
var e = e || window.event; // also there is no e.target property in IE. instead IE uses window.event.srcElement
var target = e.target || e.srcElement;
var elemtype = e.target.nodeName;
elemtype = elemtype.toUpperCase();
var iscontenteditable = "false";
if(typeof target.getAttribute!="undefined" ) iscontenteditable = target.getAttribute("contenteditable"); // Return true or false as string
var iscontenteditable2 = false;
if(typeof target.isContentEditable!="undefined" ) iscontenteditable2 = target.isContentEditable; // Return true or false as boolean
if(target.parentElement.isContentEditable) iscontenteditable2 = true;
if (iscontenteditable == "true" || iscontenteditable2 == true)
{
if(typeof target.style!="undefined" ) target.style.cursor = "text";
return true;
}
}
////////////////////////////////////
function disable_copy(e)
{
var e = e || window.event; // also there is no e.target property in IE. instead IE uses window.event.srcElement
var elemtype = e.target.tagName;
elemtype = elemtype.toUpperCase();
if (elemtype == "TEXT" || elemtype == "TEXTAREA" || elemtype == "INPUT" || elemtype == "PASSWORD" || elemtype == "SELECT" || elemtype == "OPTION" || elemtype == "EMBED")
{
elemtype = 'TEXT';
}
if(wccp_free_iscontenteditable(e)) return true;
var isSafari = /Safari/.test(navigator.userAgent) && /Apple Computer/.test(navigator.vendor);
var checker_IMG = '';
if (elemtype == "IMG" && checker_IMG == 'checked' && e.detail >= 2) {show_wpcp_message(alertMsg_IMG);return false;}
if (elemtype != "TEXT")
{
if (smessage !== "" && e.detail == 2)
show_wpcp_message(smessage);
if (isSafari)
return true;
else
return false;
}
}
//////////////////////////////////////////
function disable_copy_ie()
{
var e = e || window.event;
var elemtype = window.event.srcElement.nodeName;
elemtype = elemtype.toUpperCase();
if(wccp_free_iscontenteditable(e)) return true;
if (elemtype == "IMG") {show_wpcp_message(alertMsg_IMG);return false;}
if (elemtype != "TEXT" && elemtype != "TEXTAREA" && elemtype != "INPUT" && elemtype != "PASSWORD" && elemtype != "SELECT" && elemtype != "OPTION" && elemtype != "EMBED")
{
return false;
}
}
function reEnable()
{
return true;
}
document.onkeydown = disableEnterKey;
document.onselectstart = disable_copy_ie;
if(navigator.userAgent.indexOf('MSIE')==-1)
{
document.onmousedown = disable_copy;
document.onclick = reEnable;
}
function disableSelection(target)
{
//For IE This code will work
if (typeof target.onselectstart!="undefined")
target.onselectstart = disable_copy_ie;
//For Firefox This code will work
else if (typeof target.style.MozUserSelect!="undefined")
{target.style.MozUserSelect="none";}
//All other (ie: Opera) This code will work
else
target.onmousedown=function(){return false}
target.style.cursor = "default";
}
//Calling the JS function directly just after body load
window.onload = function(){disableSelection(document.body);};
//////////////////special for safari Start////////////////
var onlongtouch;
var timer;
var touchduration = 1000; //length of time we want the user to touch before we do something
var elemtype = "";
function touchstart(e) {
var e = e || window.event;
// also there is no e.target property in IE.
// instead IE uses window.event.srcElement
var target = e.target || e.srcElement;
elemtype = window.event.srcElement.nodeName;
elemtype = elemtype.toUpperCase();
if(!wccp_pro_is_passive()) e.preventDefault();
if (!timer) {
timer = setTimeout(onlongtouch, touchduration);
}
}
function touchend() {
//stops short touches from firing the event
if (timer) {
clearTimeout(timer);
timer = null;
}
onlongtouch();
}
onlongtouch = function(e) { //this will clear the current selection if anything selected
if (elemtype != "TEXT" && elemtype != "TEXTAREA" && elemtype != "INPUT" && elemtype != "PASSWORD" && elemtype != "SELECT" && elemtype != "EMBED" && elemtype != "OPTION")
{
if (window.getSelection) {
if (window.getSelection().empty) { // Chrome
window.getSelection().empty();
} else if (window.getSelection().removeAllRanges) { // Firefox
window.getSelection().removeAllRanges();
}
} else if (document.selection) { // IE?
document.selection.empty();
}
return false;
}
};
document.addEventListener("DOMContentLoaded", function(event) {
window.addEventListener("touchstart", touchstart, false);
window.addEventListener("touchend", touchend, false);
});
function wccp_pro_is_passive() {
var cold = false,
hike = function() {};
try {
const object1 = {};
var aid = Object.defineProperty(object1, 'passive', {
get() {cold = true}
});
window.addEventListener('test', hike, aid);
window.removeEventListener('test', hike, aid);
} catch (e) {}
return cold;
}
/*special for safari End*/
document.ondragstart = function() { return false;}
function nocontext(e) {
return false;
}
document.oncontextmenu = nocontext;
var e = document.getElementsByTagName('body')[0];
if(e)
{
e.setAttribute('unselectable',"on");
}
Skip to content
If you’ve ever wondered which electric scooter has the longest range , then look no further, we have found it. We have reviewed and tested the Dualtron X to see what the fuzz is all about. When we first heard of the Dualtron X, and it being the electric scooter with the longest range, we…
#1 Long Distance Cruiser Segway Ninebot ES4 2020 edition Our Rating: 4.5/5 Most people will know Segway from their iconic mode of transport that appeared on the market years ago. Segway is responding well to the growing demand for electric scooters. This has resulted in a wide range of several modern electric scooters. The…
Xiaomi M365 Review – 500+ miles review Below you will find my honest review of the Xiaomi M365 after using it for more then 500 miles. First up are the specs of the Xiaomi M365, then my honest review, and some Q&A. Xiaomi M365 Our Rating: 4.7/5 Xiaomi M365 (Xiaomi Mi) Review The Xiaomi…
GOTRAX GXL V2 review. The GOTRAX GXL V2 is a popular electric scooter that has an affordable price point. Today we’ll go over how it performed during our tests and if it is worth the price. First, let’s review the GOTRAX GXL V2 and then we’ll share the test results. Specs and Facts GOTRAX GXL…
error: Content is protected !!
document.documentElement.style.setProperty('--scrollbar-offset', window.innerWidth - document.documentElement.clientWidth + 'px' );
var timeout_result;
function show_wpcp_message(smessage)
{
if (smessage !== "")
{
var smessage_text = '<span>Alert: </span>'+smessage;
document.getElementById("wpcp-error-message").innerHTML = smessage_text;
document.getElementById("wpcp-error-message").className = "msgmsg-box-wpcp warning-wpcp showme";
clearTimeout(timeout_result);
timeout_result = setTimeout(hide_message, 3000);
}
}
function hide_message()
{
document.getElementById("wpcp-error-message").className = "msgmsg-box-wpcp warning-wpcp hideme";
}
var kadenceConfig = {"screenReader":{"expand":"Child menu","expandOf":"Child menu of","collapse":"Child menu","collapseOf":"Child menu of"},"breakPoints":{"desktop":"1024","tablet":768},"scrollOffset":"0"};
//escooterexpert.com/wp-content/themes/kadence/assets/js/navigation.min.js
//escooterexpert.com/wp-content/plugins/breeze/assets/js/js-front-end/breeze-lazy-load.min.js