stopPropagation в iOS - PullRequest
       4

stopPropagation в iOS

0 голосов
/ 08 ноября 2018
  • Когда я нажимаю #blue, я хочу fadeOut # red.
  • Когда я нажимаю на фон (в данном случае htlm), я хочу исчезнуть # blue
  • Я хочу, чтобы, когда я нажимал #blue, #blue не исчезал. Вот почему я использую e.stopPropagation();

В третьем пункте у меня проблема. В настольных компьютерах это работает хорошо. Но я тестирую его на iPad, и когда я нажимаю #blue, #blue также исчезает. (Я не мог проверить с iPhone или другими телефонами)

Почему это происходит и как это решить?

Примечание: Я мог бы найти временное решение, поместив div в качестве фона:

$("#background").on('click touchstart', function(){
    $("#blue").fadeOut(500);
});

Но я до сих пор не понимаю, почему он не работает с $ ("html") и что происходит с stopPropagation в iOS.

	$("#blue").click(function(e) {
		e.stopPropagation(); 
    	$("#red").fadeOut("slow");
    });
	
	$("html").on('click touchstart', function(e){
		$("#blue").fadeOut(500);
    });
#blue {
	position: absolute;
	top: 100px; left: 100px;
	width:100px; height: 40px;
	font-size:16px;
	background-color:blue;
	cursor: pointer;
}
	
#red {
	position: absolute;
	top: 200px; left: 100px;
	width:40px; height: 40px;
	font-size:16px;
	background-color:red;
	cursor: pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="blue"></div>
<div id="red"></div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...