vik
8 лет назадКураторам: баланс силы голоса во вкладке браузера.
На большинстве бирж курс отображается прямо во вкладке, это удобно.
Кураторам голоса может быть полезно контролировать свою силу голоса в реальном времени
Это очень просто реализовать несколькими строчками кода в текстов документе, а вернее в html.
В итоге у нас будет отдельная вкладка, где мы будем видеть свою силу голоса. Или не свою, если введем в форму другой ник :)
Все работает на базе моих прошлых уроков, потому расписывать код не буду.
Как сделать себе:
Создаем в текстовом редакторе (например notepad++) пустой html документ
Копируем код со страницы http://pastebin.com/raw/Vi070vsK
Открываем в браузере и вводим ник, для которого показывать силу голоса.
thml+js
<html><head><title>Сила</title><link rel="icon" type="image/x-icon" href="https://golos.io/images/favicons/favicon.ico"/></head>
<body>
<h1 id="sila">Сила голоса...</h1>
<script>
function myN(){
var checkname = document.getElementById("name"), name = checkname.value;
var socket = new WebSocket('wss://ws.golos.io');
socket.onopen = function(event) {
setInterval(function() {
socket.send(JSON.stringify({
id: 1,
method: 'get_dynamic_global_properties',
'params': []
}));}, 3000);
};
socket.onmessage = function(event) {
var silaGolosa, powerMovement,
data = JSON.parse(event.data);
if (data.id === 1 ) {
movementTotal = data.result.total_vesting_shares.split(' ')[0];
silaTotal = data.result.total_vesting_fund_steem.split(' ')[0];
socket.send(JSON.stringify({
id: 2,
method: 'get_accounts',
params: [
[name]
]
}));}
if (data.id === 2) {
powerMovement = data.result[0].vesting_shares.split(' ')[0];
silaGolosa = silaTotal * (powerMovement / movementTotal);
document.getElementById('sila').innerHTML = ('Cила голоса <span>' + silaGolosa + '</span>');
document.title = silaGolosa;
}}
socket.onerror = function(event){setTimeout(myN(), 1000);}}
</script>
<input id="name" type="text"><button onclick="myN()">Показать силу</button>
</body>
</html>
Все работает по принципу подключения к сокетам голоса через основную ноду wss://ws.golos.io
Очень подробно описано мною в прошлых постах: