C'est donc une question simplifiée de ce (qui im utilisant pour référence, pour rendre cette question facile ...)Comment getScript une seule fois
Using resize to getScript if above x pixels (jQuery)
Si j'appelle une fonction qui reçoit script, si cette fonction se déclenche à nouveau, le script ne sera plus chargé.
Qui dans ce code est.
getScript - How to only call if not already called
est un exemple, mais je l'ai essayé ce code il y a quelque temps.
EX:
$(function()
{
var gotscript=false;
$(window).resize(function()
{
//Dekstop
if (window.innerWidth >= 768)
{
if (!gotscript)
{
// GET DESKTOP SCRIPT TO KEEP THINGS QUICK
$.getScript("js/desktop.js", function()
{
gotscript=true;
});
}
}
if (window.innerWidth < 768)
{
if (window.innerWidth >= 768)
{
if (!gotscript)
{
// GET DESKTOP SCRIPT TO KEEP THINGS QUICK
$.getScript("js/desktop.js", function()
{
gotscript=true;
});
}
}
}
}) .resize(); // trigger resize event
})
Cette charge le script dans une fenêtre redimensionne événement.
J'ai oublié de mentionner ...
var $window = $(window);
function checkWidth() {
var windowsize = $window.width();
////// LETS GET SOME THINGS IF IS DESKTOP
var $desktop_load = 0;
if (windowsize >= 768) {
if (!$desktop_load) {
// GET DESKTOP SCRIPT TO KEEP THINGS QUICK
$.getScript("js/desktop.js", function() {
$desktop_load = 1;
});
}
}
////// LETS GET SOME THINGS IF IS MOBILE
if (windowsize < 768) {
}
}
// Execute on load
checkWidth();
Cela fonctionne lorsque la taille de la fenêtre est au-dessus 768, et depuis sa seule charge cette fonction une fois, il ne se charge pas à nouveau le script. Que puis-je faire pour que le script se charge s'il est inférieur à 768, puis dépasse 768, et ne le charge pas à nouveau.
votre instruction if dans la seconde moitié de votre script sont mutuellement exclusifs, ce qui signifie le code contenu à l'intérieur ne sera jamais le feu. –
Pourriez-vous expliquer ce que vous voulez dire un peu mieux? Should if have ----- if (window.innderWIdth> = 768) {...} else {...} –
Possible duplication de [Comment s'assurer que le javascript n'est chargé qu'une seule fois] (https: // stackoverflow .com/questions/19164788/comment-assurer-que-le-javascript-est-chargé-seulement-une fois) –