Gå til innhold

JohndoeMAKT

Medlemmer
  • Innlegg

    13 805
  • Ble med

  • Besøkte siden sist

Bloggkommentarer skrevet av JohndoeMAKT

  1. Nå er begge typene informasjonsbokser lagt til men den tilhørende gamer må modifiseres litt og styles, noe jeg gjør senere i dag.

     

    EDIT: Og nå er den modifisert og stylet. Jeg ser at Gamer noen ganger har et stort toppbilde jeg også må få med i bedre størrelse.

     

    Bruker du Firefox må du for å oppdatere cache skru av greasemonkey ( nede til høyre ), besøke scriptet ( her ), trykke F5 for å oppdatere cache, aktivere greasemonkey og så trykke F5 igjen for å reinstallere det.

     

    Bruker du Opera må du laste ned skriptet fra linken over og sannsynligvis oppdatere cache av CSS. Det gjør du ved å åpne disse filene ( i Opera, vanlig "open in new tab" ):

     

    http://brillegeit.com/hw/hardRape/v02/hardRapeGamer.css

    http://brillegeit.com/hw/hardRape/v02/hardRapeHardware.css

    http://brillegeit.com/hw/hardRape/v02/hardRapeAkam.css

  2. Det tar litt tid og du må til tider ha tunga rett i munnen i den verste DOM-manipuleringen, men for det meste er det relativt enkelt. Jeg har skrevet et par tusen linjer JavaScript på jobben og mye av dette er ganske identisk av det jeg har laget tidligere. Jeg vil med andre ord si at dersom du kan litt mer JavaScript enn formvalidering skal det ikke være for umulig å lage noe som dette.

     

    Her er et eksempel på den mest avanserte biten, ingenting annet enn hårete:

     

    for ( i = 0; i < articleRelatedArticles.childNodes.length; i++ ) {
    		if ( articleRelatedArticles.childNodes[i].tagName == 'H3' ) {
    			var temp = document.createElement( 'h2' );
    			temp.innerHTML = articleRelatedArticles.childNodes[i].innerHTML;
    			articleRelatedArticles.replaceChild( temp, articleRelatedArticles.childNodes[i] );
    		} else if ( articleRelatedArticles.childNodes[i].tagName == 'UL' ) {
    			for( j = 0; j < articleRelatedArticles.childNodes[i].childNodes.length; j++ ) {
    				if ( articleRelatedArticles.childNodes[i].childNodes[j].tagName == 'LI' ) {
    					var temp = articleRelatedArticles.childNodes[i].childNodes[j].childNodes[1].childNodes[1];
    					articleRelatedArticles.childNodes[i].childNodes[j].removeChild( articleRelatedArticles.childNodes[i].childNodes[j].childNodes[1] );
    					articleRelatedArticles.childNodes[i].childNodes[j].removeChild( articleRelatedArticles.childNodes[i].childNodes[j].childNodes[2] );
    					articleRelatedArticles.childNodes[i].childNodes[j].appendChild( temp );
    					temp.appendChild( document.createElement( 'span' ) ).className = 'clear';
    				}
    			}
    		}
    	}

     

    Men det meste av koden er enklere og mer logisk som dette:

     

    getElementsByType: function( type, parent ) {
    	if ( typeof type == 'string' ) {
    		if ( typeof parent == 'string' ) {
    			parent = document.getElementById( parent );
    		}
    		if ( !( parent ) || ( parent && parent.nodeType != 1 ) ) {
    			return false;
    		}
    
    		if ( ( elements = parent.getElementsByTagName( type ) ) ) {
    			return elements;
    		}
    	}
    	return false;
    }

     

    For øyeblikket teller jeg 445 linjer.

  3. I dag skrev jeg en drøss hjelpefunksjoner som vil gjøre endringer en del lettere. Endringen av Hardware.no-forsiden gikk f.eks fra 60 linjer til 30. ( At hjelpefunksjonene var på omtrent 200 linjer skal vi ikke nevne for høyt )

    Det er lagt til en av/på knapp, funksjonen som detekter hvilken side du er på er gjort mye mer solid og jeg har lagt til Gamer.no forsiden. I morgen legger jeg til Gamer.no-artikler hvor det tydeligvis er litt forskjellige strukturer på forskjellige artikkeltyper, men det regner jeg ikke med at tar lang tid.

     

    Med andre ord kommer v0.2 ut i morgen.

     

    EDIT: Linker til søstersider og andre funksjoner kan jeg sikkert legge til.

  4. ATM er ikke det mulig da jeg rett og slett fjerner alt av det orginale designet uten mulighet for å få det tilbake, men det er en klar utvidelse.

     

    Løsning1:

    Hold den orginale DOM-strukturen i variabler og bare bytt de to strukturene frem og tilbake.

    + Krever ikke omlasting av siden

    - Må først reversere alt hardRape har gjort med artiklene

    - Litt skitten MTP minnebruk

     

    Løsning2:

    Lag en cookie med av/på verdi. Ved hver omlasting leses denne variablen ut.

    + Enkel og ombrukbart, krever ikke reversering av nedrivning, ingen minnebruk

    - Krever omlasting av siden

    - Krever cookie som lager en liten sikkerhetsrissiko

     

     

    Jeg tror løsning to er den jeg vil satse på i neste oppdatering.

×
×
  • Opprett ny...