var done = false;
var result = "";
obj.ondone = function(e) { // здесь любое событие
done = true;
result = e.result;
// хотим отловить этот момент
};
var
, то только так:var func = function(callback) {
obj.ondone = function(e) {
callback(e.result);
};
};
func(function(result) {
alert(result);
});
_done = false;
_result = "";
function func() {
obj.ondone = function(e) {
_done = true;
_result = e.result;
};
}
setTimeout(function f() {
if(_done) {
// готово
} else {
setTimeout(f, 500); // каждые 0.5 с
}
}, 500); // каждые 0.5 с
func();
change
-> input
caniuse.com/#feat=input-eventfunctio
-> function
$.jsonParse
Пфф... джиквери_головного_мозга какой-то.{"2": "cvxcsv", "7": "dfsdsf"}
:var str = "{\"2\": \"cvxcsv\", \"7\": \"dfsdsf\"}";
var obj = JSON.parse(str);
console.log(obj); // {"2": "cvxcsv", "7": "dfsdsf"};
var str2 = JSON.stringify(obj);
console.log(str2); // "{"2": "cvxcsv", "7": "dfsdsf"}"
<div />
- не думаю.UTF-8 without BOM
. Мне тогда помогло.<meta name="copyright" content="" />
стоит не таб, не пробелы, а непонятно что. Заменил на таб - заработало.meta
в body
, удивился, полез в код, нашел разницу между author
и copyright
var prom = new Promise.resolve();
words.forEach(v => {
prom = prom.then(() => {
return myCoolAnimation(v);
});
});
function myCoolAnimation(v) {
return new Promise((resolve, reject) => {
// Делаем все
el.onclick = () => { // пример, у Вас будет другое событие
// Доделали
resolve();
};
});
}
var a = [{"id":1, "item": 213}];
var b = [{"id":1, "item": 213}, {"id":78, "item": 21}, {"id":19, "item": 13}];
var result = a.filter(function(v) {
return b.some(function(v2) {
return v.id == v2.id && v.item == v2.item;
}
});
console.log(result);
/contacts.html
на https://my-cool-site.ru/load.php?url=http://his-bad-site.com/contacts.html
. Проблема в том, что URL может встретиться где угодно: в JS Вы его можете не заметить:var pr = "http";
var host = "his-bad-site.com/";
var path = "contacts.html";
location.href = pr + "://" + host + path; // Не отловите
var self = this;
this.player.addEventListener('ended', function (){
self.nextSong();
console.log('Audio file ended');
});
this.player.addEventListener('ended', () => {
this.nextSong();
console.log('Audio file ended');
});
...
<script type="text/javascript">
localStorage.setItem("from", "banana");
</script>
...
...
<script type="text/javascript">
localStorage.setItem("from", "motocycles");
</script>
...
...
<script type="text/javascript">
var option = localStorage.getItem("from");
// UPD НЛО прилетело и вставило сюда неправильный код
document.querySelector("select").value = option;
</script>
...
split
*делит* код на части, а expression_answer
является разделителем, и следовательно убирается. Вам нужен match:var result_answer = string_txt.match(expression_answer);
var string_txt = "1 Биология. 2 География. 3 Геология.";
var result_answers = string_txt.split(". ");
for(var i = 0; i < result_answers.length; i++) {
result_answers[i] = result_answers[i].match(/^(\d+) (.+)$/).slice(1);
}
alert(result_answer[0][0]); // 1
alert(result_answer[0][1]); // Биология
alert(result_answer[1][0]); // 2
alert(result_answer[1][1]); // География
var string_txt = "1 Биология. 2 География. 3 Геология.";
var result_answers = string_txt.split(". ");
alert(result_answer[0]); // 1 Биология
alert(result_answer[1]); // 2 География