Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Проблема разделения страницы на логические страницы в mobile fQuery (https://javascript.ru/forum/jquery/59587-problema-razdeleniya-stranicy-na-logicheskie-stranicy-v-mobile-fquery.html)

Григорий Данилович 17.11.2015 21:07

Проблема разделения страницы на логические страницы в mobile fQuery
 
У меня есть страница которая инициализируется так
<body onload='setup();' >
после того как я её разделил на логические страницы с помошью
<div data-role="page" id="wipaw">
и подобных у меня перестала вызываться функция setup, как мне кажется, если я вызываю вторую или третью логические страницы с другой HTML страницы.
Кто знает в чём дело?

Григорий Данилович 18.11.2015 01:15

Error: cannot call methods on checkboxradio prior to initialization; attempted to call method 'refresh' Это то что я получаю после разделения одной HTML на "страницы" JQM.

КАК правильно вызывать setup функции для каждой "страницы" JQ Mobile в одном HTML файле? Куда помещать .load() (если это она) ?
Кто-нибудь знает?

Григорий Данилович 18.11.2015 11:19

Решение, которое я нашёл:

Функция setup нормально вызывается этим:
<body onload='setup();' >
(программисты тоже люди и должны иногда спать!)
Но проблема заключалась в том, что эта функция обращается ко всем частям целой HTML - даже к тем которые теперь не показываются ввиду разделения её на части - страницы jQuery.

Моё решение - разделить функцию тоже на части, поместив внутрь неё switch оператор:
switch (location.hash){
	  case '#page1':
	       setPage1();    
	       break;
	  case '#page2':
  		setPage2();
	       break;
	  case '#page3':
	  case '':
	       setPage3();
	      break;
	  default:
	console.log('*** wrong hash: '+location.hash);
  }


Кто может предложить более элегантное решение, не использующее switch?

Григорий Данилович 18.11.2015 12:57

Теперь проблемы с кнопками - переходами между страницами...
Последний вариант -
<a href='#' onclick="javascript:location.hash='#wipaw'" data-role="button">Who Is Playing Against Who</a>

Не вызывает setup() вообще.
Кто-нибудь подскажет что делать или так и будете смотреть как я истекаю кровью?


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