Имеется кусок кода:
<div class="box box_info box_userinfo_stats">
<div class="head colhead_dark">Statistics</div>
<ul class="stats nobullet">
<li>Joined: <span class="time tooltip" title="Nov 13 2009, 17:00">4 years, 10 months ago</span></li>
<li>Last seen: <span class="time tooltip" title="Sep 25 2014, 12:09">Just now</span></li>
<li class="tooltip" title="187.40092 GB">Uploaded: 187.40 GB</li>
<li class="tooltip" title="66.80858 GB">Downloaded: 66.81 GB</li>
<li>Ratio: <span class="tooltip r20" title="2.80504">2.80</span></li>
<li>Required Ratio: <span class="tooltip" title="0.50909">0.51</span></li>
<li><a href="userhistory.php?action=token_history&userid=187313">Tokens</a>: 0</li>
</ul>
</div>
Для этой страницы нужно взять строки с Uploaded и Downloaded и подставить эти данные в div вместо Statistics.
У меня вышло так:
function statsShow() {
var id1 = document.querySelector('div.box.box_info.box_userinfo_stats').querySelector('div.head.colhead_dark');
var id1_Text = id1.childNodes[0].nodeValue; // сохраняем старое значение
var seedID = document.querySelectorAll('li.tooltip')[0].childNodes[0];
var leechID = document.querySelectorAll('li.tooltip')[1].childNodes[0];
id1.childNodes[0].nodeValue = seedID.nodeValue + ' / ' + leechID.nodeValue;
}
Код ужасен, это я понимаю. Как его можно улучшить, сделать более универсальным?
Браузер FF32.0.1