Задать вопрос

Почему выводится NaN в данном случае?

Здравствуйте, делаю что-то типа конвертера валют, через парсер вывожу сайт и вешаю обработчик нажатия на класс с ценой валюты, при клике на валюту должна выводится эта валюта умноженная на 60, но выходит NaN. Подробнее в коде.
<?php
// $page = file_get_contents('https://www.investing.com/');
// echo $page;
$ch = curl_init('https://ru.tradingview.com/symbols/MOEX-BR1!/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, false);
$html = curl_exec($ch);
curl_close($ch);

echo $html;
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="style.css">
    <script src="https://code.jquery.com/jquery-3.6.3.min.js" integrity="sha256-pvPw+upLPUjgMXY0G+8O0xUf+/Im1MZjXxxgOcBQBXU=" crossorigin="anonymous"></script>ц
</head>
<body>
<!-- <div class="tv-symbol-price-quote__value js-symbol-last"></div>   
<div class="kv"></div> -->
</body>
    <script>
        $( ".tv-symbol-price-quote__value" ).click(function() {
            var r = $('.tv-symbol-price-quote__value').html();
            var r = parseFloat(r);
            var h = 60.0;
            document.write(r*h);
        });
    </script>
</html>
  • Вопрос задан
  • 149 просмотров
Подписаться 1 Простой 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
sergiks
@sergiks Куратор тега PHP
♬♬
Так не будет работать.
Вы через PHP забираете статичный HTML той страницы. Элемент с классом tv-symbol-price-quote__value js-symbol-last там — пустой. Это после обработки в браузере JS, в тот элемент попадает обновляемое значение котировки.

Обновления, вроде бы, приходят по постоянному WebSocket соединению.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы