melky,
ок тогда объясни почему я не вижу дивака при твоем варианте?
<html>
<head>
</head>
<body>
<script>
var defParams = {
parent: document.body,
id: "",
className: "default_class_for_created_elements"
};
function create(params){
if (!params.tag) return;
params.prototype = defParams;
var nevv = document.createElement(tag);
nevv.id = params.id;
nevv.className = params.className;
return params.parent.appendChild(nevv);
}
create('div',
{
id:'newDiv',
className:'className',
innerHTML: 'test',
style:{
//display:'none',
width:'100px'
}
}
)
</script>
</body>
</html>
А вот мой вариант:
<html>
<head>
</head>
<body>
<script>
function applyParams( obj, params ) {
for( var key in params ) {
if ( typeof params[ key ] === "object" ) {
applyParams( obj[ key ], params[ key ] );
} else {
obj[ key ] = params[ key ];
}
}
}
function create( tag, params, parent ) {
if ( !tag ) {
return 'tagName is null';
}
var nevv = document.createElement( tag );
if ( params && typeof params === "object" ) {
applyParams( nevv, params );
}
return ( parent || document.body ).appendChild( nevv );
}
create('div',
{
id:'newDiv',
className:'className',
innerHTML: 'test',
style:{
//display:'none',
width:'100px'
}
}
)
</script>
</body>
</html>