Цитата:
Мне понравился вариант Aetae, хоть сначала я его и не понял.:p Вот, попробовал применить на ещё одном задании:
var a = $('a');
/*первый вариант функции вывода ссылок;*/
// function sum() {
// for (var i = 0; i < a.length; i++) {
// $(a[i]).html($(a[i]).html() + '(' + a[i].href + ')');
// }
// }
// sum();
/*второй вариант функции вывода ссылок;*/
function sum() {
$a = a;
$a.append(function (i) {
return '(' + a[i].href + ')'
})
}
sum();
Скинул два варианта, первый явно бредовый какой-то вышел, с append по-красивее выходит.:) Как сказал laimas, нефиг совать jq всюду и делать "гибриды"... Если уж делать на jq то правильно. Благодарю всех участвующих за терпение и (особенно) примеры функций:write: . Только проблема в том, что из ваших ответов я задаюсь всё большим количеством вопросов:help: . Надеюсь, что в дальнейшем смогу получить на них ответы;). Так то, я уже два месяца как мучаю этот javascript, толком так и не продвинулся. Всякие мелочи делаю, даже калькулятор нормальный сварганить немогу.:cray: |
:)
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(function() {
var $num = $(".p"),
btn = $(".btn"),
inp = $("input");
btn.on({
"click": sort
});
function sort() {
var val = $.map($num, function(el) {
return +el.textContent
}).sort(function(a, b) {
return a - b
});
inp.val(val)
}
});
</script>
</head>
<body>
<input type="text">
<div class="p">10</div>
<div class="p">0</div>
<div class="p">5</div>
<div class="p">-1</div>
<button class="btn">Sort</button>
<script>
</script>
</body>
</html>
|
drakulawz,
А это что за танцы с бубнами?
var a = $('a');
$a = a;
$a.append(function (i) {
Зачем лишний мусор в программе? чтобы потом сложнее было разобраться? |
Цитата:
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
body {
counter-reset: num;
}
.num:after {
counter-increment: num;
content: ' 'counter(num);
}
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(function() {
var $num = $(".p"),
btn = $(".btn");
btn.on({
"click": num
});
function num() {
$num.addClass('num')
}
});
</script>
</head>
<body>
<div class="p">Первый</div>
<div class="p">Второй</div>
<div class="p">Третий</div>
<div class="p">Четвертый</div>
<button class="btn">num</button>
<script>
</script>
</body>
</html>
|
Цитата:
|
рони, так нечестно! Обман зрения! Ничего не дописывается!
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
body {
counter-reset: num;
}
.num:after {
counter-increment: num;
content: ' 'counter(num);
}
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(function() {
var $num = $(".p"),
btn = $(".btn"),
tst = $(".test"),
inp = $("input");
tst.hide();
btn.on({
"click": num
});
tst.on({
"click": test
});
function num() {
$num.addClass('num');
tst.show();
}
function test() {
var arr = [];
$num.each(function() { arr.push(this.innerHTML); });
inp.val(arr);
}
});
</script>
</head>
<body>
<div class="p">Первый</div>
<div class="p">Второй</div>
<div class="p">Третий</div>
<div class="p">Четвертый</div>
<button class="btn">num</button>
<button class="test">test</button>
<input type="text">
<script>
</script>
</body>
</html>
|
Цитата:
var num = $('.p')
Цитата:
Перебор выполняет num.html() this - это конкретный элемент DOM из набора элементов объекта num, получаемый при переборе. |
Цитата:
function sort() {
var val = $.map($num, function(el) {
return +el.textContent
}).sort(function(a, b) {
return a - b
});
inp.val(val)
}
рони, с методом map мне ещё предстоит знакомство. Он создаёт новый масив в котором записаны функции по отношению к элементам массива num. В данном случаи оно создаёт массив цифр, так как в num у нас записаны цифры. Так? А такая запись не правильная была бы +el.text?
function num() {
$num.addClass('num')
}
Интересно:write: |
Цитата:
|
drakulawz,
$a = a;ничего не переобъявляет. Это две переменные одинакового типа и одинакового содержания. $ здесь ничего не значит. Просто программисты для удобства - чтобы лучше видеть в тексте программы переменные с объектами jq и применять к ним соответствующие методы - зачастую используют $ в имени переменных. |
| Часовой пояс GMT +3, время: 09:33. |