Почему этот код jQuery работает не более 3 раз? - PullRequest
0 голосов
/ 19 декабря 2018

При попытке выполнить следующий код jQuery (в Chrome. Никогда не пытался в других браузерах, но должен показывать тот же результат)

<!doctype html>
<html>
	<head>
		<script
  src="https://code.jquery.com/jquery-3.3.1.min.js"
  integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
  crossorigin="anonymous"></script>
	<script>
		$(function(){
			$("#btn").on("click", function(){
				$("ul li:first").appendTo("ul li:last");
			});
		});
	</script>
	<style>
		.bold {
			font-weight: bold;
		}
	</style>
	</head>
	<body>
		<ul>
			<li>A</li>
			<li>B</li>
			<li>C</li>
		</ul>
		<input id="btn" type="button" value="SWAP"/>
	</body>
</html>

Я нажимаю кнопку первый раз.Как и ожидалось, список меняется на B, C, A с A, B, C, затем снова щелкается и изменяется на C, A, B с B, C, A.Но в третий раз я нажимаю, список становится пустым (появляется только кнопка), но я ожидал увидеть результат A, B, C снова.Но почему список становится пустым?

Ответы [ 2 ]

0 голосов
/ 19 декабря 2018

Попробуйте, это может помочь.Но убедитесь, что на странице нет других элементов ul / li, поэтому.

$(function(){
            $("#btn").on("click", function(){
                $("li:first").appendTo("ul");
            });
        });
0 голосов
/ 19 декабря 2018

вы должны добавить в ul, но вы добавляете внутри li. Измените это

$ ("li: first"). AppendTo ("ul: last");

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...