kann man das script erweitern?
ich wollte gerne noch bei select wenn man anklickt den unteren teil auch noch stylen mit hilfe css nur muss man in diesen code noch was reinschreiben das er das an nimmt:....
wer super wenn sich jemand damit auskennt mit jquery..
MFG Metty
PHP:
var imgPath = '../img/';
var selectWidth = 158;
var form = {
// INIT STYLES
initStyles : function() {
radio_on = new Image(); radio_on.src = imgPath+"/radio_on.png";
radio_off = new Image(); radio_off.src = imgPath+"/radio_off.png";
chkbx_on = new Image(); chkbx_on.src = imgPath+"/checkbox_on.png";
chkbx_off = new Image(); chkbx_off.src = imgPath+"/checkbox_off.png";
var input = document.getElementsByTagName('input');
var obj = new Array();
for(i=0;i<input.length;i++)
{
if(input[i].type == 'radio' || input[i].type == 'checkbox')
{
var id = input[i].type + '_' + i;
var checked = (input[i].checked) ? 'on' : 'off';
var chkd = (input[i].checked) ? 'checked' : '';
var newInput = '<input id="' + id + '" type="' + input[i].type + '" name="' + input[i].name + '" value="' + input[i].value + '" style="display:none" ' + chkd + '/>';
newInput += '<span id="img_' + id + '" class="' + input[i].type + '_' + checked + '" onclick="form.setInput(this, \'' + id + '\')"></span>';
var style = document.createElement('div');
style.innerHTML = newInput;
input[i].parentNode.replaceChild(style, input[i]);
}
}
var input = document.getElementsByTagName('select');
for(i=0;i<input.length;i++)
{
if(input[i].id != 'country1' && input[i].id != 'country2')
{
form.setOpacity(input[i], 0);
var style = document.createElement('span'); style.className = 'select';
style.appendChild(document.createTextNode(input[i].options[input[i].selectedIndex].childNodes[0].nodeValue));
input[i].parentNode.insertBefore(style, input[i]);
input[i].onchange = function() { this.previousSibling.innerHTML = this.options[this.selectedIndex].childNodes[0].nodeValue; };
}
}
},
// HANDLE INPUTS
setInput : function(obj, id) {
var input = document.getElementById(id);
if(input.type == 'radio')
{
var radio = document.getElementsByTagName('input');
for(i=0;i<radio.length;i++)
{
if(radio[i].type == 'radio' && radio[i].name == input.name)
{
radio[i].checked = false;
document.getElementById('img_'+radio[i].id).className = document.getElementById('img_'+radio[i].id).className.replace(/_on/g,'_off');
}
}
}
if(obj.className.match(/_off/g)) {
obj.className = obj.className.replace(/_off/g,'_on');
input.checked = true;
} else {
obj.className = obj.className.replace(/_on/g,'_off');
input.checked = false;
}
},
// SET OPACITY
setOpacity : function(obj, opacity) {
obj.style.filter = "alpha(opacity:"+opacity+")";
obj.style.KHTMLOpacity = opacity/100;
obj.style.MozOpacity = opacity/100;
obj.style.opacity = opacity/100;
},
// HANDLE EVENTS
addEvent: function(obj, evType, fn) {
if(obj.addEventListener)
{
obj.addEventListener(evType, fn, false);
return true;
} else if (obj.attachEvent) {
var r = obj.attachEvent('on' + evType, fn);
return r;
} else return false;
}
}
// ADD EVENT
form.addEvent(window, 'load', form.initStyles);
wer super wenn sich jemand damit auskennt mit jquery..
MFG Metty