js include znotraj js-ja
6 naročnikov
6 naročnikov
Na strani imam includan 1 css fajl, ki ima znotraj tega css-ja importane vse ostale css fajle (spodaj imam primer). Vprašanje je, kako lahko to naredim z js-jem? :(
CSS PRIMER
@import '//netdna.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css';
@import '//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css';
@import '/assets/css/';
@import '/assets/js/plugin/preloader/css/materialPreloader.css';
@import '/assets/js/bootstrap/datepicker/css/datepicker.css';
.transparent {}
.class1 {}
Kako lahko to naredim z js-jem?
6 odgovorov
načeloma z document.write
bi pa vsaj jaz to raje naredil tako, da bi v en include (html/php/..) fajl dal vse <script... tage
glih to nočem, da so not vsi <script tagi in hočem imeti samo 1 <script tag ki loada recimo <script="master.js"></script>
v master.js pa loadani vsi .js fajli. ali se da sploh?
Se da ampak se ti pojavijo druge težave kot so onload itd. Tudi to lahko rešiš s callback ampak ja ... google it ...
spicey:
RequireJS se uporablja za take zadeve
ali pa npr http://browserify.org/
pa drugače, uporabljati importe v CSS fajlu ni dobra praska... če imaš veliko js fajlov potem tudi ni v redu...
RequireJS kot so napisali je verjetno najboljša varianta
Lahko tud kej takega:
function loadScript(url, callback)
{
// Adding the script tag to the head as suggested before
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
// Then bind the event to the callback function.
// There are several events for cross browser compatibility.
script.onreadystatechange = callback;
script.onload = callback;
// Fire the loading
head.appendChild(script);
}