如何根据不同的url加载不同的css?
示例:
https://domain1.tld & https://*.domain.tld => css1.css
https://domain2.tld & https://*.domain2.tld => css2.css
https://elsedomain.tld & https://*.elsedomain.tld => css3.css提前谢谢。
发布于 2015-08-12 09:35:35
如果必须使用JavaScript (而不能将其构建为.NET项目或示例),则可以使用case语句查看主机:
function mymodule_preprocess_html() {
var site = window.location.hostname;
switch (site) {
case 'siteurl1':
//Add code for site 1 here
break;
case 'siteurl2':
//Add code for site 2 here
break;
case 'siteurl3':
//Add code for site 3 here
break;
}
}然后可以添加使用JavaScript插入CSS文件的代码,并将其指定如下:
function mymodule_preprocess_html() {
var site = window.location.hostname;
switch (site) {
case 'siteurl1':
var head = document.getElementsByTagName('head')[0];
var link = document.createElement('link');
link.id = cssId;
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = 'http://website.com/css/stylesheet1.css';
link.media = 'all';
head.appendChild(link);
break;
case 'siteurl2':
var head = document.getElementsByTagName('head')[0];
var link = document.createElement('link');
link.id = cssId;
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = 'http://website.com/css/stylesheet2.css';
link.media = 'all';
head.appendChild(link);
break;
case 'siteurl3':
var head = document.getElementsByTagName('head')[0];
var link = document.createElement('link');
link.id = cssId;
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = 'http://website.com/css/stylesheet3.css';
link.media = 'all';
head.appendChild(link);
break;
}
}可能有更整洁的方法..。
发布于 2015-08-12 07:52:46
因为所有这些都在不同的域中,所以您只需将css文件链接到所提供的标记中即可。
https://stackoverflow.com/questions/31959119
复制相似问题