deejaybet Posted November 25, 2005 Share Posted November 25, 2005 i am relatively new to CSS and Javscript and i have come to a problem...i need a code for my site so that when users click on the style they want, the iframes also go with that stylefor example: the main page has the style choice and there are 2 iframes also on the page wen the user clicks on the style sheet they wud like, the background of the iframes change also..is this possible to do or not ?the code for the template switch ios shown belowfunction setActiveStyleSheet(title) {var i, a, main;for(i=0; (a = document.getElementsByTagName("link")); 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++) {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++) {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;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); Link to comment Share on other sites More sharing options...
hacknsack Posted November 28, 2005 Share Posted November 28, 2005 How about adding an "ID" to the style link and then just alter the "href" value.(Each iframe source page would also have a style link with the same "ID")Tested this in IE6, FF, NN7, Op8.5 <html><head> <title></title><link id="sDef" href="ifStyle.css" rel="stylesheet" type="text/css"><script type="text/javascript">function loadStyle(styleSheet){var i_frames = document.getElementsByTagName('iframe');for(var k = 0; k < frames.length; k++){ frames[i_frames[k].name].document.getElementById('sDef').href = styleSheet; }document.getElementById('sDef').href = styleSheet;}</script> </head><body><div>You need bigger text.<form> <input type="button" value="Bigger Text" onclick="loadStyle('ifStyleB.css')"></form></div><iframe width="600" height="100" id="aFrame" name="aFrame" src="ifStyleA.html"> </iframe><iframe width="600" height="100" id="bFrame" name="bFrame" src="ifStyleA.html"> </iframe><iframe width="600" height="100" id="cFrame" name="cFrame" src="ifStyleA.html"> </iframe></body></html> Let me know if it doesn't test out OK for you.Thanks, Link to comment Share on other sites More sharing options...
deejaybet Posted November 28, 2005 Author Share Posted November 28, 2005 umm... im realli confused :s lol... my site is www.philipworld.co.ukthe first page is faulty... im workin on it but neways da main page after the intro is wer i want the pages to change styles...i dont want to use the form button.. i want the choice of styles to be similar to msn.com... the text version that is lol... can u explain in simpliar terms lol im just a beginner to this css and javascript stuff Link to comment Share on other sites More sharing options...
deejaybet Posted December 1, 2005 Author Share Posted December 1, 2005 can anyone help me ? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now