Передача стиля (высота || ширина), который должен быть изменен в функции? - PullRequest
0 голосов
/ 30 января 2012

если я передаю обычную строку (т.е. высоту или ширину) из одной функции A в B, чтобы изменить стиль элемента -

<html>
<script type="text/javascript" >
function B(temp , attributeToChange , val ){
        temp.style.attributeToChange = val + "px"
}

function A(){

        var to = 200;
        B(this , "width" ,400 ) 
        B( this, "height" , to ) 
}

</script>
<style type="text/css">
    .in{
    width: 100px;
    height: 30px;
    }

</style>


<input class="in" type="button" value="Click Me" onclick="A.call(this)">
</html>

Это было невозможно, так как я 'Я не могу использовать параметр attributeToChange, полученный в виде строки в B(). Есть ли способ добиться этого (установить атрибут элемента из строки) или это можно обойти - использовать switch (attributeToChange) ??

1 Ответ

1 голос
/ 30 января 2012

Попробуйте

temp.style[attributeToChange] = val + "px"

В javascript a["x"] и a.x означают одно и то же .

enter image description here

«Название песни называется« Глаза Пикша ».

« О, это название песни, не так ли? »- сказала Алиса, пытаясь почувствовать заинтересованность.

«Нет, ты не понимаешь», сказал Рыцарь, выглядя немного недовольным.«Так называется это имя. На самом деле его зовут« Старец в возрасте ».

« Тогда я должен был сказать: «Так называется эта песня?», - поправила себя Алиса.

«Нет, вы не должны: это совсем другое! Песня называется« Пути и средства »: но это только то, как она называется, вы знаете!»

«Ну, что за песня, затем?"сказала Алиса, которая к этому времени была совершенно сбита с толку.

«Я шел к этому», сказал Рыцарь.«Песня на самом деле звучит как« Сидеть на воротах », а мелодия - мое собственное изобретение».

В javascript у нас есть someObject, у него есть атрибут, называемый width, иНазвание этого атрибута называется attributeName.Тогда

someObject.width == someObject["width"] == someObject[attributeName]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...