Попробуй так:
$('.list').hide();
function char_db(sub, char) {
//выдаем разделы
if (sub == 1 || sub == 2 || sub == 3) {
sub = Number.parseInt(sub);
$.ajax({
type: "POST",
url: "/char",
data: { asub: sub },
success: function success(resp) {
var text = JSON.parse(resp);
for (i = 0; i < text.length; i++) {
$('.charter_i').find('ul').append('<li data="' + text[i]['id'] + '">' + (i + 1) + '. ' + text[i]['names'] + '</li>');
}
show_charter(char);
}
}).fail(function () {
return;
});
} else {
return;
}
}
$('.sub_wrapper').on("click", function () {
//обрабатываем клик
if (!$('.list.charter_i').hasClass('visi')) {
//если не показаны разделы
var char = $(this);
var sub = $(this).attr('data');
char_db(sub, char);
} else {
if ($(this).find('span').hasClass('detected')) {
return;
}
hide_charter();
};
});
Там старая iOS с старым Safari и он наверно не поддерживает ES 6