Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Обращение к свойству функции (https://javascript.ru/forum/events/72471-obrashhenie-k-svojjstvu-funkcii.html)

AdDa 31.01.2018 15:12

Обращение к свойству функции
 
Имеется к примеру некая функция которая отрисовывает элемент
<script>
function initScriptedGauges() {
    new RadialGauge({
        renderTo: 'another-gauge',
        width: 800,
        height: 800, 
        title: false,
        value: 0
    }).draw();
} 
</script>
и функция которая передает значение в блок
<script> 
document.querySelector('#qw').textContent = data[3];  
  </script>
Как мне значение которое находиться тут data[3] , передать в первую функцию отрисовки в свойство value ?

Nexus 31.01.2018 15:14

Передайте как аргумент, либо возьмите значение в функции из DOM элемента.

AdDa 31.01.2018 15:19

Можно пожалуйста пример ?

Nexus 31.01.2018 15:23

//Первый вариант
function initScriptedGauges(data) {
    console.log(data);

    new RadialGauge({
        renderTo: 'another-gauge',
        width: 800,
        height: 800,
        title: false,
        value: 0
    }).draw();
};

document.querySelector('#qw').textContent = data[3];
initScriptedGauges(data[3]);

//Второй
function initScriptedGauges() {
    var data = document.querySelector('#qw').textContent;

    new RadialGauge({
        renderTo: 'another-gauge',
        width: 800,
        height: 800,
        title: false,
        value: 0
    }).draw();
};

document.querySelector('#qw').textContent = data[3];
initScriptedGauges();

AdDa 31.01.2018 15:30

что то не получается... не присваивает ничего 0 висит

AdDa 31.01.2018 15:34

я не пойму как мы обращаемся к свойству Value ?

Nexus 31.01.2018 15:35

Цитата:

Сообщение от AdDa
не присваивает ничего

Цитата:

Сообщение от AdDa
передать в первую функцию отрисовки в свойство value

Вы конструктору "RadialGauge" данные передали в параметре "value"?

//Первый вариант
function initScriptedGauges(*!*data*/!*) {
 
    new RadialGauge({
        renderTo: 'another-gauge',
        width: 800,
        height: 800,
        title: false,
*!*
        value: *!*data*/!*
*/!*
    }).draw();
};
 
document.querySelector('#qw').textContent = data[3];
initScriptedGauges(*!*data[3]*/!*);

AdDa 31.01.2018 15:36

Вместо value: 0 должно быть значение data[3]

AdDa 31.01.2018 15:37

вот терь понял, сейчас попробую

AdDa 31.01.2018 15:55

в таком ключе, значение передается , все ок.
var data = 111;
function initScriptedGauges() {
    new RadialGauge({
        renderTo: 'another-gauge',
        width: 800,
        height: 800,
        title: false,
        value: data,

По другому как мне надо не хочет....

<script>
	setInterval(function() { 
var getDataFromDOM = function (selector) {
  var el = document.querySelector(selector),
    values = el.textContent.replace(/[^\d,]/g, '').split(','),
    last = values.pop().split('');
 
  return values.concat(last);
};
 //обработка строки
var data = getDataFromDOM('#data');
document.querySelector('#qw').textContent = data[3]; 

initScriptedGauges(data[3]);
}, 100); 

  </script>


<script>
function initScriptedGauges(data) {
    new RadialGauge({
        renderTo: 'another-gauge',
        width: 800,
        height: 800, 
        title: false,
        value: data, 
    }).draw();
}
 
</script>


Часовой пояс GMT +3, время: 11:50.