css() наподобие Jquery
"Наподобие" - это конечно громко сказано, но...Короче, вот весь код:
<html><head></head><body></body></html>
<script>
function $() {
return {
id: function (id) {
this.elem = document.getElementById(id);
this.id = id;
return this;
},
add: function (add) {
this.elem.innerHTML += add
return this;
},
html: function () {
return this.elem.innerHTML
},
tag: function (tag, index) {
this.elem = document.getElementsByTagName(tag)[index]
return this;
},
write: function (write) {
this.elem.innerHTML = write
return this;
},
src: function () {
return this.elem.src
},
create: function (created_elem) {
this.elem = document.createElement(created_elem)
document.body.appendChild(this.elem)
return this;
},
css: function (css_func) {
css_func = function () {
with(this.elem.style) {
}
/* тут я не знаю что писать */
}
}
};
}
$().create('div').write('asd').css(function () { /* тут я не знаю что писать */ })
</script>
Что написать там где комментарии? Есть единственная мысль передать это: css(function () { /* код */}) в ф-ию css: function....а там уже использовать eval, чтобы все это преобразовать в js. Пример: .css(function () { display = none \n background = red }) Содержимое ф-ии передается в eval, который преобразует это все в рабочий код. Но вот как передать? :blink: |
Никаких идей?
|
Цитата:
|
css({
'padding-left': '5px',
'border-radius': '5px'
})
|
FINoM, Kolyaj,
Да я уж понял, что там кардинально отличается...Насчет with учту...только мне это не особо важно в итоге вот что:
$().create('div').write('sdf').css(function () { display = none })
Ну это как в пример: создаем див, пишем в нем sdf , и делаем его скрытым. |
| Часовой пояс GMT +3, время: 13:12. |