JSFiddle - React, Tailwind, and code Playground
HTML
<button class=JQPopup title="TEST JQPOPUP" sizex=950 sizey=700 close=1 link="http://www.626suite.it">TEST ME</button>
JavaScript
/**
* Data la lista degli argomenti, ritorna il primo che non sia null o undefined. Se non è presente
* un tale argomento, ritorna undefined.
*/
function pick() {
for(var i = 0, l = arguments.length; i < l; ++i) {
if(arguments[i] !== undefined && arguments[i] !== null) {
return arguments[i];
}
}
return undefined;
}
/**
* Blocca la propagazione di un evento.
*
* @param {object} event evento da bloccare
* @param {bool} prevent se bloccare anche l'azione di default
* @return {bool} false
*/
function stopEvent(event, prevent) {
event = event || window.event;
prevent = pick(prevent, true);
if(event) {
if(prevent && event.preventDefault) event.preventDefault();
if(event.stopImmediatePropagation) event.stopImmediatePropagation();
if(event.stopPropagation) event.stopPropagation();
event.cancelBubble = true;
}
return false;
}
/**
* Calcola le dimensioni effettive della finestra del browser.
*
* @return {array} dimensioni nella forma [width, height]
*/
function getWindowSize() {
var myWidth = 0, myHeight = 0;
if(typeof(window.innerWidth) == 'number') {
//Non-IE
myWidth = window.innerWidth;
myHeight = window.innerHeight;
}
else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
//IE 6+ in 'standards compliant mode'
myWidth = document.documentElement.clientWidth;
myHeight = document.documentElement.clientHeight;
}
else if(document.body && (document.body.clientWidth || document.body.clientHeight)) {
//IE 4 compatible
myWidth = document.body.clientWidth;
myHeight = document.body.clientHeight;
}
return [myWidth, myHeight];
}
/**
* Crea un popup jquery dialog contenente un iframe che punta alla pagina richiesta.
*
* @param {string} link url della pagina che il dialog deve contenere
* @param {object}...