$('#line')
возвращает jQuery-объект. Попробуйте var line = SVG($('#line')[0]);
, вернется DOM-элемент var x = '1',
times = 10000,
start1 = +new Date();
for (var i=0; i<times; i++) {
if (x == 'a' || x == 'b' || x == 'c') {
}
}
var time1 = +new Date() - start1,
start2 = +new Date();
for (var i=0; i<times; i++) {
if (x.match(/^(?:a|b|c)$/)) {
}
}
var time2 = +new Date() - start2;
console.log(time1, time2)
x
будет равно 'a'
, то каждый раз будет будет проверяться только x == 'a'
и тогда первый вариант проходит за 25-35 мс. Т.е. в данном конкретном примере выигрывают регекспы. var scrollBottom = $('#inner').height() - $('#outer').height() - $('#outer').scrollTop();
#inner
(т.е. узнать высоту содержимого не так просто), то нужно создать клон div'a, сделать его css height
равной auto
, а потом, с помощью яваскрипта узнать его высоту. И сделать так, как описано выше.