Я не знаком с iui, но когда вы написали:
но это событие срабатывает в обоих случаях
Я думаю, вы что-то упустили (что вполне может объяснить вашу проблему). Если вы посмотрите на код слайдера, вы увидите, что перетаскивание мышью имеет другой набор событий, которые запускаются; посмотрите на "_mouseCapture
" и "_mouseDrag
". _mouseDrag
вызывает "_slide
", но также сначала "_normValueFromMouse
". Что касается "_mouseCapture
", то он не подключен напрямую в коде слайдера (так что, очевидно, это делается с помощью некоторого общего кода пользовательского интерфейса jQuery), поэтому я не могу точно сказать, что он задействован, но на основании названия кажется вероятным, что это так.
В любом случае, _mouseDrag,
_normValueFromMouse
, или, возможно, _mouseCapture
(или какая-то функция, которую они вызывают), кажется, непреднамеренно вызывает какую-то функцию iui. Я полагаю, что iui подключает функцию с тем же именем, что и функция UI слайдера / jQuery, и делает это после того, как jQuery UI подключает ее, и в результате слайд вызывает функцию iui.
Представьте, была ли определена функция goSomewhere в пользовательском интерфейсе jQuery, а затем вызвана с помощью _mouseDrag
. Обычно это будет работать нормально, но если кто-то (iui) определит свою собственную функцию goSomewhere, эта функция будет вызываться вместо _mouseDrag
.
В качестве альтернативы проблема может заключаться в том, что код слайдера вызывает что-то, что не приводит к переходу на другую страницу в обычном режиме, но происходит на iPhone; однако, я подозреваю, что это не так.
Надеюсь, это поможет.