BU - fabriek, het gebruik van dit bu - fabriek,,,,,,,,,, 4, 31 - eenheid,,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen.,, voor een lange tijd. Het is de enige manier om aangepaste controle bij de voorbereiding van dit is verlengd, FN, een dollar.Dit is van toepassing op de eenvoudige onderdelen, maar, als je begint te bouwen van de vergadering staat meer is, het wordt snel saai.In de loop van hulp van de onderdelen van een gebouw: BU team wordt verwijderd van de meeste onderdelen fabriek, monster, is vaak het beheer van een ding.,,, - fabriek, een deel van de bu, de kern van de code, die voor het beheer van een van de onderdelen van de levenscyclus van een gerichte aanpak.Deze activiteiten van de levenscyclus, met inbegrip van:,, een deel van het creëren en vernietigen, de vervanging van onderdelen te kiezen, zodat "super" - controles, bel de aanmelding, laten we naar de API - en als we de oprichting van een eenvoudig aan de controle van de kogel.En de 'kogel' dingetje, bij de opbouw van een van deze kleine onderdelen voor, laat ons weten wat een blok van deze controle.De kogel is een kaart van de grafieken Stephen verandering een concept voor een kaart.,, BAR en geven van de relatieve prestaties met elkaar overlappen.Er is een kwantificering van de werkelijke omvang van tabel aangegeven waarden.De BAR en de etikettering door er op deze manier, meer informatie kan worden overgebracht, en is niet van invloed op de leesbaarheid.De legende vertelt ons de opstelling van alle informatie, deze kaart: //europa.eu.int /comm /ziet er als volgt uit: <.- de kaart van vaartuigen - > < div = "kaart op de kaart" > <.- verenigingen - > < div = "legende" style= "> < div =" legendarische post "> < breedte =" symbolen met groene "> < Kruis > < trans - type =" legende "> Etikettering van de groene lijn - > LT <; /div > < /div > <.- kaart - > < div = "kaarten" CONTAINER ": 86% van de breedte van style=;" > <.-- Quantitative Scale --> <div class="tick-bar"> <div class="tick" style="left: 0%;"></div> <div class="tick-label" style="left: 0%;">0</div> <div class="tick" style="left: 25%;"></div> <div class="tick-label" style="left: 25%;">25</div> <div class="tick" style="left: 50%;"></div> <div class="tick-label" style="left: 50%;">50</div> <div class="tick" style="left: 75%;"></div> <div class="tick-label" style="left: 75%;">75</div> <div class="tick" style="left: 100%;"></div> <div class="tick-label" style="left: 100%;">100</div> </div> <!- de BAR - > < div = "BAR" style= "links: breedte: 75% van 0px; BAR;" index = 0 > < /div > < div = "blauw" style= "links: 0px; breedte: 50%," van De kroeg index = "1" > < /div > <.- mark - > < div = "markers" groene "style= links: 80%;" - index = "0" > < /div > < div = "markers" rood "style= links: 50%; - index =" 1 "en" > < /div *; < /div > < /div >, van onze instrumenten, we bellen, bulletchart). Uit de beschikbare gegevens worden geproduceerd: //europa.eu.int /comm /.Tot slot kan aantonen dat de dingen op de pagina van de github kijk, je kan het.De oproep om dingen eruit moet zien:, $("kaart"). Bulletchart ({omvang: artikel 86: [{Titel: het doel, waarde: 75, CSS:'} {Titel: praktische doelstellingen, waarden: 50, CSS: blauw ")], merken: [{Titel:" de groene lijn. Waarde: 80, CSS:'"groene"} {Titel: "de laagste drempel", waarde: 50, CSS:'rode "): [0], tik, 25, 50, 75 of 100]);}, het percentage van de waarde van alle.Als je denk dat er een paar kogels in de relatieve omvang van elkaar worden geplaatst, kan je het gebruiken.Tik, tik, tik, is gebruikt om de omvang van de opties voor etikettering.De etikettering en de BAR is aangewezen als de installatie van de tekst, de titel, de waarde van de eigenschap en CSS,,.,, de bouw van onderdelen, nu we weten dat kleine delen van de structuur op te bouwen, laten we het.Een van de leden is door een beroep te doen op de dollar. Dingen (), samen met de naam en het delen van die voorbeelden daarvan.De API -.:,, plug - in (naam van de basis. [], prototype), en nu gebruiken we alleen de naam en het prototype van de discussie.Als we de fundamentele onderdelen van bulletchart, korte lijkt, de dollar onder ('nt. Ding. Bulletchart {opties: {}, _create: functie () {}, _destroy: functie () {}, _setoption: functie (Bond, waarde) {}});, stel ik voor dat je je altijd een deel van de de naam.In dit geval is ons gebruik van "," bulletchart, nt.Alle goede BU kleine onderdelen ", onder de gebruikersinterface, Space.Maar we zijn een oproep tot de onderdelen, een onderdelen, met uitzondering van de attributen namespace.Dus, het creëren van een kogel, maar we zullen noemen, $("# element"). Bulletchart (), aanleg van aangewezen., de naam van de controle.Overeenkomstig de gevestigde praktijk van de onderdelen van de particuliere alle methoden moeten gebaseerd zijn op een _ ".Zijn specifieke eigenschappen, die naar verwachting in kleine delen.Deze maatregelen omvatten de keuze van _create,,,,,,,, _destroy, _setoption, opties: dit is de standaard optie, _create, onderdelen, onderdelen. Deze methode wordt genoemd: de eerste vergadering geconcretiseerd.Dit is voor het creëren van de DOM en de aanvullende gebeurtenis: de oproep _init.,,,,, _create, fabrieken _init, telefoon.Dit wordt meestal gebruikt voor kleine onderdelen opnieuw in de oorspronkelijke staat.Als een deel van de oprichting van gemeenschappelijke controles, bel de fabrikant, bijvoorbeeld, de dollar. Bulletchart (), zal opnieuw delen.Dit in de interne noemen, _init,.,, _setoption,: bel, als je in het raam van kleine onderdelen van de opties, een telefoon, zoals: $("# element"). Bulletchart ('option', "maat", 100).We zullen later wel zien op een andere wijze keuze van onderdelen, het creëren van een eerste dom.,,, _create, we bulletchart ding, _create manier van leven.Hier is onze fundamentele structuur voor de opbouw van een kaart._create, functie, zie het volgende.Je zal merken dat hier niet veel gebeurd is, afgezien van het creëren van de Top van de container.Het creëren van BAR dom werk, etikettering en tik gebeuren in, _setoption, methode.Dit lijkt een beetje contra - intuïtief is begonnen, maar dit is gerechtvaardigd, _create: functie () {. -.AddClass ('bullet-chart "); ///////_container =% (grafiek container < div =" kaarten "CONTAINER" > < /div > "). Appendto (deze. _setoptions ({"); de omvang van':this.options.size "luizen": this.options.ticks, BAR: this.options.bars, "marker": this.options.markers});}, aan de BAR, etikettering en controle van teken kan worden vastgesteld door middel van opties voor de verandering.Als we de code houden van gebouwen, de _create, zullen we herhalen binnen, _setoption,._setoption via mobiele code, en verzoekt haar _create, het schrappen van herhaalde en zijn gericht op de opbouw van de code, en het toont aan dat je een andere manier om de controles die optie.Met _setoptions methode (,, aandacht te besteden aan), kan je een reeks verschillende opties.In de fabriek zal ervoor zorgen dat de mensen, de oproep van de _setoption, elke optie. _setoption, methoden voor,,, de kogel figuur, _setoption, methode is de belangrijkste.Het teken van de BAR en de verwerking, de oprichting van een teken, een wijziging van deze eigenschap.Het door de afschaffing van alle bestaande en het creëren van nieuwe elementen op basis van de waarde van _setoption, methoden,., die de mogelijkheden van sleutels en een waarde als parameter.De sleutel is de naam van deze optie, die overeenkomt met de standaard optie in deze optie een sleutel.Bijvoorbeeld, het veranderen van onderdelen van de BAR, je zal de volgende Tel.:, $("# element"). Bulletchart ('option', BAR [{Titel: "de nieuwe index", waarde: 50)]), _setoption, ziet er als volgt uit: voor de bulletchart methode, _setoption: functie (Bond, waarde) {VAR zelf de keuze = blz. De, fnmap = (BAR: functie () {createbars (waarde, zelf);}, "marker": functie () {createmarkers (waarde, zelf);}, "luizen": functie () {createtickbar (waarde, zelf);}, "maat": functie () {zelf vinden. Element. (". Grafiek container). ('width, de waarde van +%);}}; ///////_s van deze basis.(Bond, waarde); als (sleutel in fnmap) {fnmap [] (de belangrijkste gebeurtenissen); ///////_triggeroptionchanged (brand, de belangrijkste, gisteren, waarde);}}, hier, creëren we een eenvoudig - optie die overeenkomt met de naam van de functie.Het gebruik van deze hasj, we werken alleen in de goede optie is, en niet ongeldig.Er zijn er nog twee dingen gebeuren: een telefoon hier, _super (), schieten de optie van gebeurtenissen.We zullen zien of die verderop in dit artikel, elke mogelijkheid verandert de DOM, noemen we een specifieke methode.De aanvullende methoden, createbars,, createmarkers, createtickbar aangewezen controle - instanties, en eigenschappen.Dit is omdat ze zijn dezelfde voor alle dingen en moet niet worden gecreëerd individually voor elke instelling aan de taken van instance. dingetje, ///////createTickBar betekent, een widget) {///////de bestaande widget._container.find ('.tick-bar')? (); var tickBar = $('< div = "tick-bar" > < /div> "); $.each betekent, functie (idx, tik) {VAR t = $('< div =" tik "> < /div>"). ('left', teken +%); var de = $('< div = "tick-label" > < /div> "('left',). Tik +%).Text (te); tickBar.append (T); tickBar.append (tl);}); widget._container.append (tickBar);} functie createMarkers (techniek, de bestaande widget._c widget) {///////Ontainer.find ('.marker')? (); $.each (techniek, functie (idx, m) {VAR marker = $('< div = "marker" > < /div> "). ({links: m.value +%}).AddClass (m.css).Attr ('marker-index', idx); widget._container.append (marker);});} functie createBars (staven, widget) {///////de bestaande widget._container.find ('.bar')? (); $.each (staven, functie (idx, BAR) {VAR i = $('< div =" BAR "> < /div>"). ({links: breedte: 0,'0%'}).AddClass (bar.css).Attr ('bar-index', idx).Animate ((breedte bar.value +%}); widget._container.append (BAR);});}, alle van de creatie te werken.Het percentage.Het is goed om ervoor te zorgen dat de kaart terug als je aan de elementen.Bij de oprichting van kleine onderdelen van een optie als de omstandigheden niet aangewezen, bij verstek gaan spelen.Dit is de rol van de selectie, de eigenschap.Als we de standaard optie bulletchart, ziet er als volgt uit: de dollar ('nt. Ding. Bulletchart {opties: {0 - 100%: //////////////- omvang: 100 {Titel: "monster", waarde: 75, CSS:'}], [...], [BAR: /[{Titel: "het monster mark, waarde: 50, CSS:'}], [...], merken: ///////tik tik, een percentage van de waarde: [0 - 10, 20, 30, 40, 50, 60, 70, 80, 90 - 100]},...}, beginnen we met de grootte, 100%, geen BAR en etikettering, en teken geplaatst, met 10%.Deze gebreken hebben we kogels kaart eruit moet zien:,, tot nu toe, we hebben gezien hoe het creëren van controle op het gebruik van _create verbeteren met behulp van _setoption,,,.Er is een levenscyclus van de methode van vernietiging, als je een kleine onderdelen, het zal worden genoemd.Dit is, _destroy, methode.Toen je belde, $("# element"). Bulletchart ('destroy "), delen van planten, interne bellen, _destroy, je controle - instanties.Het ding is die verantwoordelijk zijn voor de afschaffing van alle in de DOM.Dit kan ook met andere elementen toe te voegen in de DOM, _create methode.Dit is een afgesloten van een gebeurtenis die een goede plek.En _destroy, zou moeten zijn, _create, in tegenstelling tot de methoden, de kogels figuur dingetje, _destroy, heel eenvoudig, _destroy: functie () {. Dollar. RemoveClass ('bullet-chart "); deze elementen. Lege ();},,, de subsidiabiliteit, gebeurtenissen, onze bulletchart - bijna klaar alleen de laatste Functie:, de legende.De legende is heel belangrijk, want het geeft meer betekenis, de etikettering en de BAR.In dit hoofdstuk zullen wij nog een legende van de kaart naast, en niet rechtstreeks de functie toe te voegen aan de bulletchart onderdelen, creëren we een soort, een legende, bulletchart2, steunen.In dit proces, en we zullen ook kijken naar een aantal interessante onderdelen fabriek erfenis, de toevoeging van een legende, onderdelen fabriek ter ondersteuning van een subcategorie van een raam om te komen tot een meer professionele versie.Vroegere artikelen, zien we dat de API - en dollar. Widget (), zijn er drie parameters: «:,,, (naam] [de basis, het prototype), tweede argument, waarmee we een van ons kiezen op basis van de dingen.We bulletchart2 ding, dit soort,,,, bulletchart, hebben de volgende kenmerken: ('nt, dollar. Dingen. Bulletchart2, dollar. Nt.bulletchart {opties: {//verbergen Legende: waar}, /dit zal ervoor zorgen dat we op dezelfde basis, een widgeteventprefix:nt.bulletchart.prototype.widgeteventprefix dollar. _create: functie () {..._destroy:function () {}.}, _setoption: functie (Bond, waarde) {...{}), heeft een aantal interessante dingen hier te constateren:,, we delen de naam: namespace, nt. Bulletchart2,., onderdelen fabriek automatisch zal delen, nt, een dollar.Dus, naar onze eerdere kleine onderdelen, gebruiken we de dollar. Bulletchart nt.Als we de kinderen, een standaard: BU kleine onderdelen, wij kunnen leren van hun, dollar. Ui.widget-name,,, widgeteventprefix, is een nieuwe eigendom, we hebben elkaar nog niet ontmoet.Als we het hebben over de gebeurtenissen, krijgen we dit.Het voorbeeld van de rest van de eigenschappen moeten op de hoogte zijn, want we zijn legende. En nog meer dom elementen, we moeten herschrijven, _create, methode.Dit betekent ook dat we moeten herschrijven, _destroy,, met het oog op de symmetrie, _create: functie () {VAR sinds dit; dit _legend = $("< div =" legende "> < /div >"). Appendto (het. $);...///////de _super noemen. (); dit. _setoption ('legend ", van deze mogelijkheid. De legende);} {het _destroy:function (.) element te vinden. (" legende "). (); de andere...Dit _super ();}, hier eens te meer zien we hetzelfde patroon als in ons land, _create, methode.We creëren legendes van containers, en dan bel je me, _setoption, creëren legendes van de rest.Omdat we alles, _create, moeten we ervoor zorgen dat we noemen _create, basis.We _super, deze telefoon.Ook in de _destroy, zien we ook _super, telefoon.Nu denk je vast: hoe weet ik welke super widget methode om een eenvoudige, niet aan _super, noemen?Slimme kleine onderdelen van de fabriek in leugens.Wanneer een controles en de vestiging van bedrijven, _super, de verwijzing naar de verschillende functies van elke zaak.Dus, als je belt, _super, uit je aanleg methode, die altijd op de juiste, _super, de methode, de aanmelding, sinds de wijziging van de steun bulletchart etikettering en de BAR, en deze veranderingen een legende nodig.Bovendien hebben we ook steun worden verleend voor de etikettering en de zichtbaarheid van het BAR - klik op de legende.Als je een paar merken en de BAR, dat is heel nuttig.Verbergen in een aantal elementen, zie je de anderen meer duidelijkheid, ondersteuning van een markering en de BAR, de legende veranderingen, bulletchart2, onderdelen moeten luisteren naar een verandering van aard.Op basis van het brand incident is bulletchart veranderen elke keer veranderen.Hier is een fundamenteel onderdeel van de overeenkomstige fragmenten uit de _setoption: functie:, (Bond, waarde) {VAR sinds het preventief = [];...///////- basis. _super (Bond, waarde); als (sleutel in fnmap) {fnmap [] (de belangrijkste gebeurtenissen); ///////_triggeroptionchanged (brand, de belangrijkste, gisteren, waarde);}}, _triggeroptionchanged: functie (optionkey, previousvalue actuele waarde) {dit. _trigger ('setoption {aard "SetOption"} {: opties: optionkey, voor: previousvalue, de huidige: huidige});}, als een optie, een gebeurtenis die SetOption.Het evenement omvat de opties, verandert en nieuwe waarde door te luisteren naar deze gebeurtenissen, de controles in de subruimte, weet je wanneer de etikettering of de verandering van de BAR.En bulletchart2, widget achter dit geval, _create, methode.Abonnementen en een Component event, dat dit punt. () dollar op.», this.element, elementen, de vergadering worden geconcretiseerd.Omdat de gebeurtenissen in de gebeurtenissen die wij onderschrijven de elementen, moet er op die, _create: functie () {VAR sinds dit; dit _legend = $("< div =" legende "> < /div >" (dit appendto). $);...///////aanvraag voor wijziging van merk en de legende van de BAR. - ('bulletchart:SetOption "functies (evenementen, gegevens) {als (data.option = = =" markers ") {createlegend (data.current, self.options.bars zelf);} anders als (data.option = = = = = = = =" BAR ") {createlegend (self.options.markers, data.current zelf);}}); ///////de _super noemen. (); dit. _setoption ('legend", van deze mogelijkheid. De legende);}, aandacht voor abonnementen bij naam:,'bulletchart SetOption ".Als een strategie voor kleine onderdelen fabriek van geval tot geval voor geval het prefix.Bij verstek, dit prefix dingetje namen, maar dit kan zijn, widgeteventprefix makkelijk te veranderen en eigendom.Op basis van de veranderingen die bulletchart dingetje,'bulletchart:,,,, ('nt. Ding. Bulletchart {opties: {...}, widgeteventprefix: "bulletchart:'...});, moeten we ook de abonnementen, klik op "gebeurtenissen op de legendarische post verborgen /weergave van de desbetreffende markering /BAR.We doen, _on, methode.Deze methode zal de gebeurtenissen handtekening hasj naar leidinggevende functie.Procedures voor de behandeling van de context (dit is correct,) voor voorbeelden van kleine onderdelen.Aan de andere kant, _on onderdelen fabriek, is automatisch laat de gebeurtenissen vernietigd, _create: functie () {...///////hoor klik op de legende, _on ({klikken. De legendarische project "functie (gebeurtenissen) {VAR ELT = $(gebeurtenissen. CurrentTarget), projecten en = Engels. De gegevens ('chart-item"), de keuze van = "[" + item.type + index = "+ item.index +"] "; deze elementen vinden (-.). Fadetoggle (); de Engelse les. Toggleclass ('fade");}});...}, meer vaardigheden, onderdelen fabriek. Enkele andere details, moet je weten.Een voorbeeld van kleine onderdelen, tot nu toe hebben we alleen maar zien als een methode van een methode.We doen $("# element). Bulletchart ('method-name").Maar het is de methode kunnen noemen, zoals de "optie", "schade", "", "".Als je wilt direct in het raam van kleine onderdelen die voor de aanleg, is er een manier om dat te doen.Onderdelen fabriek zal de aanleg van de controle, de elementen, gegevens ().Je kan deze situatie zoals deze: var. ("# onderdelen = dollar"). De gegevens ('bulletchart "); lid. Vernietigen (); en de andere, als je dat wilt vinden op de website van de controles van alle bulletchart, er is nog een optie: allcharts = dollar, var (':NT, Een bulletchart"); bijzondere methoden, een speciale methode, moet je weten dat dit niet te vaak wordt gebruikt, _getcreateeventdata ():,,, _getcreateoptions ().De eerste is voor de gebeurtenissen van gegevens "instelling" van de gebeurtenissen na de voltooiing van het ontslag, telefoon, _create,.,, _getcreateoptions, is verbonden onderdelen of het andere bestaande standaard optie.De gebruikers van de optie - deze methode van de optie om terug te keren, dat op zijn beurt de standaard van de « plugin » optie een.,, het is een tas.Als je verder wil onderzoeken, de volgende informatie moet goed zijn voor je diensten.Natuurlijk, de beste bron van informatie is altijd de source code, het zelf.Ik zal de bron van de bevordering van het lezen jquery.ui.widget in github.,, jqueryui widget - fabriek in onderdelen fabriek van de API, dia 's,
Met behulp van dit
Previous:In de in de ontwerp -
Next Page:Grafiek 101