JSFiddle - React, Tailwind, and code Playground
HTML
<script src=" loadInitialConfig({ board: "a" });"></script>
<!DOCTYPE html>
<body>
<table>
<tr>
<td id="reply12345">
<label>
<span class="postername">Anonymous</span> 29.06.2015
</label>
<a class="postbtn-reply-href" href="#" name="12345">№ 12345</a>
<blockquote class="post" data-num="12345">
<br /> Анон, если можешь, реализуй это на чистом джаваскрипте.
<br /> Без лишних зависимостей и привязки к джейквери и т.п.
<br /> С этими ">" скобками цитирования перед каждой строкой,
<br /> переносом номера поста ">>", по которому кликаешь,
<br /> кроссбраузерностью и лёгким кодом.
</blockquote>
</td>
</tr>
</table>
<td>
<textarea rows="10" cols="60" id="shampoo" name="message"></textarea>
</td>
</body>
JavaScript
(function() {
window.thread = {};
})();
window.Store = {
get: function() {},
};
(function() {
var conf_loaded = false;
var dom_ready = false;
var dom_queue = [];
window.sc_stages = [];
window.loadInitialConfig = function(cfg) {
window.thread.board = cfg.board;
};
$(function() {
dom_ready = true;
for (var i = 0; i < dom_queue.length; i++) bmark.apply(this, dom_queue[i]);
dom_queue = [];
});
window.Stage = function(name, id, type, cb) {
window.sc_stages.push([id, name]);
if (type == Stage.INSTANT) {
name = '[I]' + name;
bmark(name, cb);
} else if (type == Stage.CONFLOAD) {
name = '[C]' + name;
if (conf_loaded) {
bmark(name, cb);
} else {
conf_queue.push([name, cb]);
}
} else if (type == Stage.DOMREADY) {
name = '[D]' + name;
if (dom_ready) {
bmark(name, cb);
} else {
dom_queue.push([name, cb]);
}
} else if (type == Stage.ASYNCH) {
name = '[A]' + name;
setTimeout(function() {
bmark(name, cb);
}, 1);
}
};
var bmark = function(name, cb) {
var start = (+new Date);
try {
cb();
} catch (err) {
append_debug();
return false;
}
var end = (+new Date);
var delta = end - start;
window.sc_time += delta;
append_debug(delta + 'ms) ' + name + '<br>');
};
var append_debug = function(text) {};
Stage.INSTANT = 1;
Stage.CONFLOAD = 2;
Stage.DOMREADY = 3;
Stage.ASYNCH = 4;
})();
Stage('Отслеживание фокуса форм', 'formfocus', Stage.DOMREADY, function() {
window.activeForm = $('#shampoo');
});
Stage('click эвенты', 'clickevents', Stage.DOMREADY, function() {
var lastselected =...