06.05.2014, 20:56
|
Аспирант
|
|
Регистрация: 25.04.2014
Сообщений: 47
|
|
cript,
Ну если получить все id, которые начинаются на elastic, то $('[id^="elastic"]')
А в вашем варианте, получить все div с id, которые начинались на elastic.
Потому, смотря, что именно вы ходите получить... по коду выше, то там font в качестве тега, потому конструкция написанная вами не выдаст в результат...
актуально описание всех api http://api.jquery.com/
если надо раша вариант, то немного не угоняющийся за актуальностью, но все же http://jquery.page2page.ru/tags/ifr.html
найдите описание по работе с селекторами и смотрите)
|
|
06.05.2014, 21:18
|
Профессор
|
|
Регистрация: 03.02.2014
Сообщений: 238
|
|
Делаю так var el = $('[id^="elastic"]') , но не срабатывает, да и так тоже var el = $('font[id^="elastic"]')
|
|
06.05.2014, 21:50
|
Аспирант
|
|
Регистрация: 25.04.2014
Сообщений: 47
|
|
cript,
а что не срабатывает?
var el = $('[id^="elastic"]'); //должен получить все, что найдет.... что у вас в el ?
|
|
06.05.2014, 22:09
|
Профессор
|
|
Регистрация: 03.02.2014
Сообщений: 238
|
|
<script src="//code.internetrange.com/jquery-1.8.3.js"></script>
<script>
var sizes = new Array("16px", "18px", "20px", "22px", "23px");
sizes.pos = 0;
var count = 0;
function rubberBand(value)
{
var el = $('[id^="elastic"]');
if (sizes.pos === 0) count++;
if (count > 2) {
clearInterval(window.tm);
count = 0;
return;
}
if (null == el.direction)
el.direction = 1;
else if ((sizes.pos > sizes.length - 2) ||
(0 == sizes.pos))
el.direction *= -1;
el.style.fontSize = sizes[sizes.pos += el.direction];
}
window.tm = setInterval('rubberBand()', 100);
</script>
<font id="elastic">Text Текст</font>
|
|
06.05.2014, 22:42
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
cript,
jquery тут как .... рукав ...
скрипты не работают со сферическими конями ... поэтому ставим ниже элемента ... учим что такое готовность страницы.
<font id="elastic">Text Текст</font>
<script src="http://code.internetrange.com/jquery-1.8.3.js"></script>
<script>
var sizes = new Array("16px", "18px", "20px", "22px", "23px");
sizes.pos = 0;
var count = 0;
function rubberBand(value)
{
var el = $('[id^="elastic"]')[0];
if (sizes.pos === 0) count++;
if (count > 2) {
clearInterval(window.tm);
count = 0;
return;
}
if (null == el.direction)
el.direction = 1;
else if ((sizes.pos > sizes.length - 2) ||
(0 == sizes.pos))
el.direction *= -1;
el.style.fontSize = sizes[sizes.pos += el.direction];
}
window.tm = setInterval('rubberBand()', 100);
</script>
|
|
06.05.2014, 23:35
|
Профессор
|
|
Регистрация: 03.02.2014
Сообщений: 238
|
|
рони,
<font id="elastic2">Text Текст</font>
<script src="http://code.internetrange.com/jquery-1.8.3.js"></script>
<script>
var sizes = new Array("16px", "18px", "20px", "22px", "23px");
sizes.pos = 0;
var count = 0;
function rubberBand(value)
{
var el = $('[id^="elastic"]');
if (sizes.pos === 0) count++;
if (count > 2) {
clearInterval(window.tm);
count = 0;
return;
}
if (null == el.direction)
el.direction = 1;
else if ((sizes.pos > sizes.length - 2) ||
(0 == sizes.pos))
el.direction *= -1;
el.style.fontSize = sizes[sizes.pos += el.direction];
}
window.tm = setInterval('rubberBand()', 100);
</script>
Почему так не срабатывает..?
|
|
07.05.2014, 00:01
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
cript,
потому что el у вас обьект jquery у которого нет свойства style но есть ключик ноль там и лежит искомый элемент.
смотрите пост выше - строка 9
|
|
07.05.2014, 00:11
|
|
Профессор
|
|
Регистрация: 07.03.2011
Сообщений: 1,138
|
|
Какой ужас
|
|
07.05.2014, 01:05
|
|
Профессор
|
|
Регистрация: 13.03.2013
Сообщений: 1,572
|
|
<div class="elastic">Текст</div>
<div class="elastic">Еще один текст</div>
<script>
var k = 0;
var npoz = next();
var allel = document.querySelectorAll("div.elastic");
var tm = setInterval(rubberBand, 100);
function next() {
var i = -1;
return function () {
i = i < 7 ? i + 1 : 0;
return [16, 18, 20, 22, 23, 22, 20, 18][i];
};
}
function rubberBand() {
if (k == 16) clearInterval(tm);
var fsize = npoz() + "px";
for (var j = 0; j < allel.length; j += 1) {
allel[j].style.fontSize = fsize;
}
k += 1;
}
</script>
|
|
07.05.2014, 02:10
|
|
Профессор
|
|
Регистрация: 07.03.2011
Сообщений: 1,138
|
|
имхо: через css проще правда в IE<10 не будет работать =)
<style type="text/css">
b {font-size: 14pt;}
.ani{-webkit-animation: gogo 1s;-webkit-animation-iteration-count: 2;
animation: gogo 1s;animation-iteration-count: 2;}
@-webkit-keyframes gogo{ 0% {font-size: 14pt;color: #23ff00;} 100% {font-size: 24pt;color: #b70000;}}
@keyframes gogo{0% {font-size: 14pt;color: #23ff00;}100% {font-size: 24pt;color: #b70000;}}
</style>
<script>
setTimeout(" $('[id^=\"elastic\"]').addClass(\"ani\") ", 500);
</script>
<b id="elastic">Text Текст</b><br>
<b id="no_elastic2">Text Текст</b><br>
<b id="elastic2_asdf">Text Текст</b><br>
<b id="no_elastic3">Text Текст</b><br>
Последний раз редактировалось MallSerg, 07.05.2014 в 13:44.
|
|
|
|