2016-05-12 4 views
0

Я борюсь с лучшими способами загрузки отзывчивой/мобильной страницы, а затем я нашел плагин jQuery, который расколол вещи в зависимости от ширины экрана. Я нашел это совершенным, так как мне не нужны дополнительные HTTP-запросы, и для мобильного пользователя он будет быстрее.Загрузка скрипта в скрипт

Но, я наткнулся на проблему: этот плагин jQuery не может загружать/отображать другие сценарии. Вы можете увидеть в этой скрипке я просто сделал: https://jsfiddle.net/g3f88q5k/

<div id="Test"> 
<!-- @media only all and (min-width:400px) 
<script> Whatever </script> 
--> 
</div> 

Это uncomments раздел я хотел, но сценарий, который делает щебет кнопку кнопка твиттер не работает.

Как я могу заставить его работать, если есть способ сделать это?

+1

Из коробки ... Если вы говорите о отзывчивости, то бутстрапу сегодняшний герой .. –

+0

@Reddy, самозагрузки не является подходящим предложением на этот вопрос, и это не очень большая библиотека для крупномасштабных проектов, потому что это кошмар для обслуживания. – zzzzBov

+0

@Reddy Я использую его со скрытыми классами и всеми. Но эти классы все еще загружают контент, просто не показывают. Я хочу, чтобы что-то загрузило контент в зависимости от размера экрана :) – borbs

ответ

-1

Вы можете роль что-то вроде этого

<html> 
    <head></head> 
    <body> 

     <script type="text/javascript"> 
      var script = document.createElement('script'); 
      script.src = "https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"; 
      script.onload = function() { 
       console.log($); // now it's loaded 
      }; 

      document.body.appendChild(script); 
      console.log($); // doesn't work 
     </script> 
    </body> 
</html> 

Я просто с помощью JQuery в качестве примера, но он должен работать с чем-нибудь.

+0

Я не думаю, что это сработает с тем, что я хочу. Это загружает скрипты, верно, но в случае кнопки твиттера ...? – borbs

0

XHR (или сам код JS) может быть выполнен в операторы if, но в случае XHR вы собираетесь получить удар производительности для нескольких загрузок сценариев. Вам бы лучше разместить весь свой JavaScript в одном мини-файле и сразу же загрузить его. У вас может быть JS обнаружение минимальной ширины и т. Д., Как медиа-запрос, но, вероятно, нелегко поддерживать.

0

Пробег: enquire.js.

По match обратного вызова:

enquire.register("your screen media query here", { 

    match : function() { 
     //load your script here 
    } 
}); 
+0

С enquire.js возможно ли загрузить нормальный контент или просто скрипт? – borbs

+0

Что вы подразумеваете под обычным контентом? Вы можете делать все, что javascript может сделать в обратном вызове, но, похоже, не раскомментирует html, :(. Так что это зависит. –

+0

Как, если я хочу показать изображение или иметь «обычный html», который в какой-то момент показывает сценарий (кнопка Twitter, в моем случае; D) – borbs

Смежные вопросы