Присваивание style с помощю javascript
Привествтую! Я уже совсем измучился поисками ответа и не могу никак понять как мне для данного кода выставить значение отступа (margin-right например) для изображения, которое вставляется на страницу и как мне создать условие, что если выравнивание left, то margin-right = "10px", а если right, то margin-left = "10px"?
/* START CONFIG */ var nicImageOptions = { buttons : { 'image' : {name : 'Добавить изображение', type : 'nicImageButton', tags : ['IMG']} } }; /* END CONFIG */ var nicImageButton = nicEditorAdvancedButton.extend({ addPane : function() { this.im = this.ne.selectedInstance.selElm().parentTag('IMG'); this.addForm({ '' : {type : 'title', txt : 'Добавить/Ред. изображение:'}, 'src' : {type : 'text', txt : 'URL (http://…)', 'value' : '', style : {width: '150px'}}, 'alt' : {type : 'text', txt : 'Комментарий (alt)', style : {width: '150px'}}, 'align' : {type : 'select', txt : 'Выравнивание', options : {none : 'По умолчанию','left' : 'Лево', 'right' : 'Право'}} },this.im); }, submit : function(e) { var src = this.inputs['src'].value; if(src == "" || src == "http://") { alert("Вы должны вставить URL изображения для вставки"); return false; } this.removePane(); if(!this.im) { var tmp = 'javascript:nicImTemp();'; this.ne.nicCommand("insertImage",tmp); this.im = this.findElm('IMG','src','style',tmp); } if(this.im) { this.im.setAttributes({ src : this.inputs['src'].value, alt : this.inputs['alt'].value, align : this.inputs['align'].value }); } } }); Подскажите пожалуйста! |
Хоть бы показали, что это за редактор такой nic, и что вы там пытались сделать, но не получилось. Выдранный кусок кода команды ничего не показывает.
|
Вот ссылка на этот редактор, я использую его для друпала, но вот пытаюсь его "допилить" до приемлемого состояния.
А пытался я в этот код вставить строчку что-то типа: setStyle({margin-right : '10px'}) вот так: if(this.im) { this.im.setAttributes({ src : this.inputs['src'].value, alt : this.inputs['alt'].value, align : this.inputs['align'].value, setStyle({margin-right : '10px'}) }); } |
submit : function(e) { var src = this.inputs['src'].value; if(src == "" || src == "http://") { alert("You must enter a Image URL to insert"); return false; } this.removePane(); if(!this.im) { var tmp = 'javascript:nicImTemp();'; this.ne.nicCommand("insertImage",tmp); this.im = this.findElm('IMG','src',tmp); } if(this.im) { this.im.setAttributes({ src : this.inputs['src'].value, alt : this.inputs['alt'].value, align : this.inputs['align'].value }); *!* if ((/left|right/).test(this.inputs['align'].value)) { var style = {}; style["margin" + (this.inputs['align'].value == "left" ? "Right" : "Left")] = "10px"; this.im.setStyle(style); } */!* } } |
Спасибо огромное!!!
Надеюсь что это еще кому-то пригодиться! Обнаружил еще кое-какую проблему с этим скриптом: если сперва выбрать выравнивание по левому краю, а потом по правому, то style картинки получит по наследству оба параметра отступа. Т.е. как можно сделать обнуление, чтобы при выравнивании по правому краю после левого не оставались параметры отступа от левого? |
Часовой пояс GMT +3, время: 01:38. |