Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   не работают скрипты на планшете и телефоне. (https://javascript.ru/forum/dom-window/69872-ne-rabotayut-skripty-na-planshete-i-telefone.html)

artem55555p 25.07.2017 13:45

вы предлагаете disabled="disabled" изменить на disabled просто??

laimas 25.07.2017 13:58

Цитата:

Сообщение от artem55555p
вы предлагаете disabled="disabled" изменить на disabled просто?

Я предлагаю изменить disabled="disabled" на disabled="fuck u, wither and do not rock". )

Пофигу, что будет написано в значении данного атрибута, хоть абвгд, хоть пустая строка, хоть просто disabled -элемент будет недоступен. Понимаете - недоступен! То есть по отношению к списку его нельзя будет раскрыть. А display: block/none, это сделать видимым/невидимым элемент списка. Проблемы с чем на планшете: а) - не зависимо от установки disabled список все равно можно раскрыть (что вряд ли), б) - не зависимо от выбора в первом списке все опции второго списка видны (что скорее всего)? И коли второе, то браузер на планшете игнорирует данные определения.

artem55555p 25.07.2017 14:02

И коли второе, то браузер на планшете игнорирует данные определения.
Ответить с цитированием - ну да:( я и спрашиваю как это исправить можно))))

Dilettante_Pro 25.07.2017 14:12

Может, так?
<div class="col-md-3 col-sm-6 col-xs-12">
   <select id="sdelka" class="sel" name="rent_buy">
      <option value="?">Sale/Rent?</option>
      <option value="0">Rent</option>
      <option value="1">Sale</option>
  </select>
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
  <select disabled="disabled" id="pp" class="sel" name="type">
      <option value="">Property type?</option>
      <option class="hd1" value="1">Villa/Home</option>
      <option class="hd1" value="2">Condo/Apartments</option>
      <option class="hd1" value="3">Bungalo</option>
      <option class="hd2" value="4">Villa/Home</option>
      <option class="hd2" value="5">Condo/Apartments</option>
      <option class="hd2" value="6">Project</option>
      <option class="hd2" value="7">Commercial</option>
      <option class="hd2" value="8">Land</option>
   </select>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
$("#sdelka").change(function() {
        var v = +this.value;
        $( ".hd1").css('display', ['block', 'none'][v]);
        $( ".hd2").css('display', ['none', 'block'][v]);
       $('#pp').prop('disabled', isNaN(v));    
});
</script>

laimas 25.07.2017 14:15

Не знаю, я не считаю планшет компьютером, по крайней мере мне такого не нужно, у меня нет. Что за браузер на планшете чужом тем более не знаю и есть ли какие способы профиксить его поведение.

Самым простым и логичным, это не стиль опций менять, а делать их недоступными, то есть:

$("#sdelka").change(function() {
        $( ".hd1, .hd2").prop('disabled', +this.value);
        $('#pp').prop('disabled', !this.value);
});

Dilettante_Pro 25.07.2017 17:38

Вообще-то по нормальному надо делать два селекта второго уровня и показывать из них нужный в соответствии с выбором в селекте первого уровня.

artem55555p 25.07.2017 18:09

а это может из-за браузера быть? т.к. ни один ни Ваш ни мой вариант не работает именно на ПЛАНШЕТЕ

Dilettante_Pro 25.07.2017 18:18

artem55555p,
Цитата:

Сообщение от artem55555p
не работает именно на ПЛАНШЕТЕ

А на нем браузер-то есть? Какой?
Что значит - не работает?

artem55555p 25.07.2017 18:22

хром. та же проблема. при клике на один селект, во втором селекте показываются все пункты. хотя вот вы же и писали:
$( ".hd1").css('display', ['block', 'none'][v]);
$( ".hd2").css('display', ['none', 'block'][v]);
но это тоже не работает((

artem55555p 25.07.2017 18:23

я не знаю, почему пункты не убираются... 2й день сижу


Часовой пояс GMT +3, время: 15:27.