سلام.
نمی دونم شاید قبل از من این سوال رو کرده باشه...
من می خوام با استفاده از یک کد Style صفحه وبم رو تعویض کنم فکر می کنم امکانش باشه.
دوستان عزیز اگه کسی راهی داره معرفی کنه
خیلی ممنون.
Printable View
سلام.
نمی دونم شاید قبل از من این سوال رو کرده باشه...
من می خوام با استفاده از یک کد Style صفحه وبم رو تعویض کنم فکر می کنم امکانش باشه.
دوستان عزیز اگه کسی راهی داره معرفی کنه
خیلی ممنون.
سوال واضح نیست.
شما با یه style نمی تونی صفحه وب رو تعویض کنی. میشه با یه STYLE جدید ، شکل و ظاهر همون صفحه رو عوض کرد ولی کدش رو نمیشه با css تغییر داد
فکر می کنم منظورم رو واضح نفگتم.
یک مثال می زنم:
من در صفحه 2 Style دارم. که هر کدامش قالب صفحه وبم را به یک رنگ در می آورد.
[HTML]<link rel="stylesheet" type="text/css" href="orangetheme.css">[/HTML]
[HTML]<link rel="stylesheet" type="text/css" href="redtheme.css">[/HTML]
گفتنش برام سخته... می دونید می خواهم مثل یک Skin عمل کنه. به طوری که من در صفحه خود 2 متن : تغییر به نارنجی / تغییر به قرمز . را گذاشته ام که اگر فردی بر روی هر کدام کلیک کند قالب به آن رنگ تغییر می کنم.
فکر می کنم اون کد بسته به حالت انتخاب کاربر آن یکی را غیر فعال می کنم و بلعکس...
از این واضح تر نمی تونستم بگم .
اگه کمکم کنید ممنون میشم.
خوب با استفاده از جاوا اسکریپت میشه یه دکمه گذاشت که کاربر با استفاده از اون بتونه برگه سبک رو عوض کنه. این روش یه ایراد داره و اون هم اینه که اگر جاوا اسکریپت روی سیستم کاربر غیر فعال باشه دیگه نمیشه برگه های سبک رو غیر فعال کرد. البته جاوا اسکریپت روی سیستم بیش از 95 درصد مردم فعاله.
برای استفاده از کد جاوا باید اول لینک برگه های سبک مشخص باشه
مثلا :
و برگه سبک دومکد:<link rel="stylesheet" type="text/css" href="orangetheme.css" title="orange">
من یه تایتل برای هر برگه سبک شما انتخاب کردم که مشخص باشه چی به چیه و برگه سبک دوم هم rel اش رو به alternate stylesheet تغییر دادم.کد:<link rel="alternate stylesheet" type="text/css" href="redtheme.css "title="red">
حالا شما باید زیر آدرس همین برگه های سبک به این فایل js لینک بدی
این رو باید بذاری زیر همون آدرس برگه های سبک قبل از تگ پایانی </head>کد:<script language="javascript" type="text/javascript" src="switcher.js"></script>
حالا این کدهارو تو یه فایل متنی بریز و با پسوند JS ذخیره کن و اسمش رو هم بذار همون switcher.js
حالا باید دو تا لینک تو صفحت بذاری که هر کس روش کلیک کنه با اونها بتونه برگه سبک رو عوض کنه. این دو تا لینک هم باید به این شکل باشهکد:/*
Paul Sowden's JavaScript switcher as detailed on:
http://www.alistapart.com/articles/alternate/
*/
function setActiveStyleSheet(title) {
var i, a, main;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1 &&
a.getAttribute("title")) {
a.disabled = true;
if(a.getAttribute("title") == title) a.disabled = false;
}
}
}
function getActiveStyleSheet() {
var i, a;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1 &&
a.getAttribute("title") && !a.disabled)
return a.getAttribute("title");
}
return null;
}
function getPreferredStyleSheet() {
var i, a;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1
&& a.getAttribute("rel").indexOf("alt") == -1
&& a.getAttribute("title")
) return a.getAttribute("title");
}
return null;
}
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0)
return c.substring(nameEQ.length,c.length);
}
return null;
}
window.onload = function(e) {
var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);
}
window.onunload = function(e) {
var title = getActiveStyleSheet();
createCookie("style", title, 365);
}
var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);
وکد:<a href="javascript:;"
onclick="setActiveStyleSheet('orange'); return false;"
>Orange text</a>
همین. تموم شد :)کد:<a href="javascript:;"
onclick="setActiveStyleSheet('red'); return false;"
>Red text</a>
جناب amir abbas جان دست شما درد نکنه.
امتحان کردم و جواب داد.
انشالله بتونم جبران کنم. موفق باشید.
سلام دوست عزیزم
من که نفهمیدم کجا باید اسم فایل های css و بدم
من یک فایلم inside.css هست و یکی inside1.css هست.
لطفا بگین کجا جایگزین کنم و به صورت پیشفرض کدوم فایل فعال است؟
با تشکر از شما