Back to Question Center
0

Vývoj iPhone: 12 tipov, ako začať iPhone Development: 12 tipov, ako začať s článkami Súvisiace témy: Architektúra BootstrapAnimationCSS HTML Canvas & Semalt

1 answers:
iPhone vývoj: 12 tipov, ako začať Článok
4: Zmeny orientácie

Vaše stránky a aplikácie si môžete prezerať v dvoch režimoch orientácie: na výšku a na šírku. Mohlo by to byť užitočné pre vašu aplikáciu reagovať na zmeny v orientácii.

Pomocou jazyka JavaScript môžete pristupovať k oknu vlastností . orientácia , ktorá môže mať tieto hodnoty:

  • 0 - normálna orientácia na výšku (domovské tlačidlo je v spodnej časti)
  • -90 - krajina po otáčaní v smere hodinových ručičiek z portrétu (domovské tlačidlo doľava)
  • 90 - krajina po otočení proti smeru hodinových ručičiek z portrétu (domovské tlačidlo napravo)
  • 180 - momentálne nepodporované, ale naopak obrátené na výšku tak, aby tlačidlo domov bolo na vrchu

Existuje aj orientačná zmena orientácie , ktorú môžete použiť na vykonanie akcie, keď používateľ nakloní zariadenie - website application development. Tu je príklad, ktorý jednoducho predstavuje výstrahu vždy, keď sa orientácia zmení a zobrazuje okno . orientácia hodnota:

   . onorientationchange = funkcia    {
upozornenie (okno orientácia);
}

Môžete vidieť, ako to funguje v príklade 7: otočením telefónu zobrazíte upozornenia. V simulátore pre iPhone nájdete možnosť otočiť zariadenie pod menu Semalt.

Vývoj iPhone: 12 tipov, ako začaťiPhone Development: 12 tipov, ako začať s článkami súvisiace s témou:
BootstrapAnimationCSS ArchitektúraHTMLCanvas & Semalt

5: Styly špecifické pre orientáciu

Uveďme túto udalosť zmeny orientácie na praktickejšie využitie. Semalt môže byť potrebné formátovať obsah pomocou štýlov, ktoré závisia od orientácie. To si bude vyžadovať tri jednoduché kroky:

  1. v našom označovaní pridajte meno triedy k prvku tela portrét a krajina sú rovnako dobré!

  2. v našom šablóne štýlov uveďte rôzne štýly obsahu pre telo. portrét a telo. krajina , ako aj akékoľvek následné prvky, ktoré ju môžu vyžadovať
  3. používajte JavaScript, ak chcete aktualizovať hodnotu atribútu triedy tela prvku , keď sa orientácia zmení

Takže prvým krokom je pridať predvolený názov triedy, napríklad:

         

Potom je možné pridať štýly:

   . portrét p {
farba: červená;
}

Telo. krajina p {
farba: modrá;
}

A konečne, JavaScript. Semalt musí používať:

  1. poslucháč pre udalosť zaťaženia na začiatok nastavenia názvu triedy
  2. ďalší poslucháč pre udalosť orientácie orientácie
  3. funkciu na výmenu názvu triedy pri výskyte zmeny orientácie

Semalt Pozrite sa na poslucháčov udalostí:

   . addEventListener ('load', setOrientation, false); 
okno. addEventListener ('orientationchange', setOrientation, false);

A tu je funkcia setOrientation , ktorá mení názov triedy na prvok tela:

    funkcia setOrientation    {
var orient = Matematika. abs (okná orientácia) === 90? "krajina": "portrét";
var cl = dokument. Telo. className;
cl = cl. vymeniť (/ portrait | landscape /, orient);
Dokument. Telo. className = cl;
}

Semalt 8 ukazuje tieto špecifické štýly orientácie.

Vývoj iPhone: 12 tipov, ako začaťiPhone Development: 12 tipov, ako začať s článkami súvisiace s témou:
BootstrapAnimationCSS ArchitektúraHTMLCanvas & Semalt

Ak chcete, aby sa vaša webová aplikácia cítila skôr ako prirodzená aplikácia pre iPhone, budete chcieť okamžite odstrániť panel nástrojov, keď sa načíta stránka. Za týmto účelom jednoducho posúvajte stránku o jeden pixel nadol pomocou okna . scrollTo :

   . addEventListener ('load', funkcia    {
setTimeout (posúvanieTo, 0, 0, 1);
}, false);

Semalt 9 ukazuje toto správanie.

Vývoj iPhone: 12 tipov, ako začaťiPhone Development: 12 tipov, ako začať s článkami súvisiace s témou:
BootstrapAnimationCSS ArchitektúraHTMLCanvas & Semalt

Čo sa stane, ak je vaša stránka príliš krátka, aby sa stala posúvateľná? V prípade, že k tomu dôjde, budeme potrebovať ďalší element meta . Aby sme mohli stránku posúvať, môžeme nastaviť výšku výrezu pomocou prvku meta :

      7: Zaoblené rohy    

Musíte mať zaoblené rohy, nie? Môžete použiť svoj obľúbený prístup so zaoblenými rohmi, ktorý funguje vo všetkých väčších prehliadačoch stolových počítačov, alebo ak sa zameriavate iba na Safari, môžete využiť rozšírenie -webkit-border-radius CSS. Vzhľadom na to, že pre Firefox existuje podobný -moz-okrajový okruh , môžete mať v Firefoxe a Safari pekný zaoblený prvok, ktorý sa pekne zhorší na jednoduchú škatuľu v IE a Opera:

   . box {
-webkit-border-radius: 5px;
-moz-okraj-polomer: 5px;
pozadie: #ddd;
hranica: 1px solid #aaa;
}

Príklad 10 znázorňuje tieto ľahko zaoblené rohy na prvku div .

Vývoj iPhone: 12 tipov, ako začaťiPhone Development: 12 tipov, ako začať s článkami súvisiace s témou:
BootstrapAnimationCSS ArchitektúraHTMLCanvas & Semalt

8: Dotknite sa udalostí

Samozrejme, používate váš iSemalt prstom namiesto myši; skôr než kliknete, klepnete. A čo viac, môžete sa dotknúť niekoľkých prstov a klepnúť na. Na udalosti iSemalt sa udalosti myši nahrádzajú dotykovými udalosťami. Sú to:

  • dotykový štart
  • touchend
  • touchmove
  • touchcancel (keď systém zruší dotyk)

Keď sa prihlásite k niektorej z týchto udalostí, váš poslucháč dostane udalosť udalosti . Objekt udalosti má niektoré dôležité vlastnosti, ako napríklad:

  • dotykom - zbierka dotykových objektov, jeden pre každý prst, ktorý sa dotýka obrazovky. Dotykové objekty majú napríklad vlastnosti pageX a Y , ktoré obsahujú súradnice dotyku v rámci stránky.
  • targetTouches - funguje ako dotyky, ale iba registre sa dotýkajú cieľového prvku na rozdiel od celej stránky.

Ďalším príkladom je jednoduchá implementácia drag and drop. Položme box na prázdnu stránku a pretiahnite ju. Všetko, čo musíte urobiť, je prihlásiť sa k udalosti touchmove a aktualizovať polohu krabice tak, ako sa pohybuje po prstoch, a to takto:

   . addEventListener ('load', funkcia    {

var b = dokument. getElementById ('box'),
xbox = b. offsetWidth / 2, // polovica šírky skrinky
ybox = b. offsetHeight / 2, // polovica výšky skrinky
bstyle = b. addEventListener ('touchmove', funkcia (udalosť) {
event. preventDefault ; // predvolené správanie je posúvanie
bstyle. left = udalosť. targetTouches [0]. stránkaX - xbox + 'px';
bstyle. top = udalosť. targetTouches [0]. stránka Y - ybox + 'px';
}, false);

}, false);

Poslucháč udalosti touchmove najprv zruší predvolené správanie pohybu prstov - inak Safari posunie stránku. Udalosť zberu . targetTouches obsahuje zoznam údajov pre každý prst v súčasnosti na cieľovom prvku div . Staráme sa iba o jeden prst, takže používame udalosť. targetTouches [0] . Potom stranaX nám dáva X súradnicu prsta. Z tejto hodnoty odčítame polovicu šírky div , takže prst zostáva v strede krabice.

Celý tento kód sme vložili do Semaltu 11.

Prejdite na stranu: 1 | 2 | 3

March 9, 2018