Nodes opnieuw indelen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Full stack developer Python, React

Functie Jij als full stack developer komt binnen onze Technology afdeling te werken. Deze bestaat momenteel uit 15 man. De stack waarmee wij werken is voornamelijk Python, Javascript, React en GraphQL. Binnen deze afdeling wordt er met multidisciplinaire teams gewerkt aan verschillende projecten. Projecten duren vaak langer dan 3 maanden en je bent van begin tot eind vaak betrokken. Naast dat je als full stack ontwikkelaar aan de slag gaat ben je ook Consultant. Dit betekent dat je ook klantcontact hebt in je rol en werkshops geeft. De verhouding tussen deze werkzaamheden zijn ongeveer 70% development en 30% consultancy. Een

Bekijk vacature »

Mendix Developer

Voor Troostwijk Groep zoeken wij een: Mendix Developer Wij zoeken Je bent een getalenteerde en ervaren Mendix Developer en het is tijd om je horizon te verbreden. Je wilt minder coderen en meer modelleren, minder bezig zijn met allerlei technische details en randvoorwaarden en meer met functionaliteit. Daarnaast ben je trots op de innovatieve en gebruiksvriendelijke applicaties die je in de loop van de jaren hebt gebouwd. Werk je graag in een enthousiast team, wil je veel vrijheid en kun je tegelijkertijd goed met deadlines omgaan, dan ben jij absoluut degene die wij zoeken! Wat je nodig hebt is ruime

Bekijk vacature »

Front end developer binnen het onderwijs

Functie Het doel van dit team is om te zorgen dat de studenten altijd op de hoogte zijn van relevante informatie en de mogelijkheid hebben om online vragen te stellen. Hiervoor hebben ze een portal ontwikkeld. De app is echt een greenfield project met een eigen inrichting middels cloud. De ontwikkeling wordt gedaan door gebruik te maken van oa. Javascript, React, CSS, Next.js, GraphQL in een Azure Cloud omgeving. Daarnaast gebruiken ze tooling als Figma, storybook, Jest en Github. De complexiteit in deze rol zit hem in het feit dat data uit verschillende bronsystemen komt waarbij er zowel gekoppeld wordt

Bekijk vacature »

.NET developer

Functie Als ervaren .NET ontwikkelaar start jij een team met 12 programmeurs. Jullie zijn verantwoordelijk voor het huidige platform van deze organisatie. Als team werken jullie in tweewekelijkse sprints en starten jullie iedere dag met een stand-up. Jij werkt samen met jouw team aan het uitbreiden van het huidige platform door middel van nieuwe features. Daarnaast zorg jij er samen met jouw team voor dat het platform veilig is en gebruiken jullie de nieuwste technieken om deze veiligheid te waarborgen. Zo maken jullie gebruik van C# .NET, .NET Core, React, Azure, Kubernetes, ASP.NET, MVC. Jij gaat aan het werk in

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Junior PHP Developer

Je maakt een vliegende start van je carrière, door meteen mee te bouwen aan de digitale aspecten van Coolblue. Wat doe je als Junior PHP Developer bij Coolblue? Als Junior PHP Developer ben je meteen vanaf de start onderdeel van een development team. Je kijkt veel mee met collega’s en volgt trainingen om te groeien als Junior Developer. Op dat moment komt je wil om steeds te blijven leren naar boven. Daarnaast pak je in de sprints ook je eigen stories op om Coolblue iedere dag een beetje beter te kunnen maken. Je sterk analytisch vermogen komt dan ook goed

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

Full stack Developer / .NET / Angular / Azure

Dit ga je doen Jij gaat je als Full Stack .NET Developer voornamelijk bezighouden met: Het vertalen van concepten naar passende innovatieve en duurzame oplossingen; Het ontwikkelen van bedrijf kritische en gebruiksvriendelijke applicaties voor de internationale markt en intern gebruik; Bouwen aan software om het Internet of Things netwerk te ondersteunen; Het maken en onderhouden van interfaces tussen systemen aan de hand van API's; Het onderhouden en blijven verbeteren van de ontwikkelde software. Hier ga je werken Binnen deze organisatie zal jij als Full Stack .NET Developer een belangrijke rol krijgen en ga je dagelijks de uitdaging aan om maatwerk

Bekijk vacature »

Senior Front-end Developer

Wordt jij de nieuwe Front end specialist / developer? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel binnen als

Bekijk vacature »

Senior PHP Developer

Als Senior PHP Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn en coach je andere developers op de hard en soft skills. Wat doe je als Senior PHP Developer bij Coolblue? Als PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, sta je open om C# of Typescript in te zetten of te leren. Ook PHP Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om

Bekijk vacature »

.NET developer

Functie Als .NET developer start jij in een ontwikkelteam met 15 developers en twee testers. Samen zijn jullie verantwoordelijk voor financiële applicaties met meer dan 50.000 gebruikers. Een deel van het team is verantwoordelijk voor de webapplicaties van deze organisatie. Ook zijn er twee app ontwikkelaars werkzaam in het team die zich focussen op de mobiele applicatie. Als .NET ontwikkelaar ga jij aan de slag met de webapplicaties van deze organisatie. Hierbij maak jij o.a. gebruik van C# .NET, ASP.NET, T-SQL, Angular en TypeScript. De nadruk van jouw functie ligt wel op de backend van de applicatie. Wat jouw functie

Bekijk vacature »

Lead Webdeveloper

As Lead Web Developer at KUBUS you are responsible for the implementation design of requirements and the software architecture of the web application and services of BIMcollab. In your role as lead developer you will naturally search for the optimum between the required implementation time, the performance of the application and a fast go-to-market of features, in line with our automated test and release train. Together with the other senior developers in your team you monitor the architecture of the application and you advise the product owner about necessary refactoring to improve the maintainability of the platform. Our development team

Bekijk vacature »

Java Developer (Training And Simulation)

Wat jij doet Je zou onze Java Developer zijn en nauw samenwerken met je Product Owner, Software System Engineer, Scrum Master en andere Developers. Samen draag je bij aan een multidisciplinair en zelf organiserend Agile team. De rol is zeer afwisselend en bestaat uit, maar is zeker niet beperkt tot: de-risk en prototype onbewezen simulatietechnologieën; simulatiekaders ontwikkelen voor gebruik door andere teams; je bent goed in het begrijpen van ingewikkelde ideeën; heeft de mogelijkheid om nauw samen te werken met grote internationale klanten, leveranciers en overheden om onze oplossingen, vastleggingsvereisten, enz. te definiëren en te presenteren. Ben jij het? Wij

Bekijk vacature »

Front-end Developer vue.js node.js SaaS

Dit ga je doen Het ontwikkelen van nieuwe features die bijdragen aan de groei van de klanten van de organisatie; Je denkt mee over nieuwe innovaties, features en verbeteringen in de applicatiearchitectuur; Je draagt bij aan de continue ontwikkeling van jouw team doordat je elke dag streeft naar het verbeteren van jouw eigen prestaties; Je neemt actief deel aan Scrum meetings en de Frontend Guild. Hier ga je werken Voor een snel groeiend bedrijf de regio Nieuw Vennep zijn wij opzoek naar een ervaren Front-end Developer. De organisatie is actief in de e-commercebranche en ontzorgt haar klanten middels een SaaS-platform.

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »
Mark Hogeveen

Mark Hogeveen

19/07/2014 23:41:12
Quote Anchor link
Ik heb een ingewikkeld javascript probleem.
Ik heb een aantal <pre> elementen. In die elementen staan <span> tags, en gewone text nodes.
Het is ongeveer zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<pre>Tekst</pre>
<pre><span>In span</span> buiten span <span>in span</span></pre>
<pre>...</pre>


Nu wil ik met javascript een span kunnen invoegen op een plek in de tekst. Je zou misschien zegggen dat je dit met innerHTML heel makkelijk kunt doen. Dat is dus niet zo, want innerHTML geeft de letterlijke html code.
Als voorbeeld neem ik de tweede <pre>
De textContent van de tweede <pre> is: In span buiten span in span
De innerHTML van de tweede <pre> is: <span>In span</span> buiten span <span>in span</span>
Ik wil dus een span invoegen op bijv. de tiende plek in de tekst.
Je kunt het zien als een soort cursor die je ergens in de tekst neerzet. De bestaande span elementen mogen niet worden beïnvloed hierdoor. Hoe doe ik dit? Ik heb echt al van alles geprobeerd.
Gewijzigd op 19/07/2014 23:42:12 door Mark Hogeveen
 
PHP hulp

PHP hulp

08/10/2024 05:20:01
 
Pipo Clown

Pipo Clown

20/07/2014 13:10:11
Quote Anchor link
Kijk eens naar document.createElement()
 
Wouter J

Wouter J

20/07/2014 13:32:40
Quote Anchor link
document.createElement() gaat je niet echt veel helpen...

Met document.createElement() kun je elementen aanmaken en die een bepaalde plek in de DOM tree gegeven, bijv. als child van (element.appendChild()) of voor een element (element.insertBefore()). In jouw geval wil je een element in een tekst plaatsen, tekst wordt in een DOM tree als een enkele TextNode gezien, daar kun je dus niks in plaatsen.

Je zult dus de Text Node moeten opvragen en die dan splitten in een array. Vervolgens op een bepaalde plek in die array een open tag moeten zetten en het element erna een sluit tag en dan de array omzetten tot een string en weer invoegen als innerHTML van het element.

Bijv. http://jsbin.com/bubew/2/edit

Code (js)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
HTMLElement.prototype.addElementAtPosition = function (position, openTag, split) {
  split || (split = ' ');

  if (this.childElementCount) {
    throw('addElementAtPosition can only be used when the element contains only text');
  }

  
  var textPositions = this.innerHTML.split(split);

  textPositions.splice(position, 0, openTag);
  textPositions.splice(position + 2, 0, '</' + openTag.substr(1));

  this.innerHTML = textPositions.join(split);
};
Gewijzigd op 20/07/2014 13:34:35 door Wouter J
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/07/2014 14:34:16
Quote Anchor link
Ik ben ook even bezig geweest :-)

Je moet als eerste niet de innerHTML uitlezen maar een array van childNodes die in je <pre> zitten.

Vervolgens kun je insertBefore() gebruiken om een nieuwe Node voor een bestaande node in te voegen.

http://codepen.io/anon/pen/Cpgrq
 
Wouter J

Wouter J

20/07/2014 14:42:42
Quote Anchor link
Frank, maar je kan toch niet elk woord afzonderlijk opvragen als Text Node?

(btw, dit is een mooie app om snel de DOM nodes te zien, dan hoef je niet zelf het script te schrijven :) http://software.hixie.ch/utilities/js/live-dom-viewer/)
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/07/2014 14:45:06
Quote Anchor link
Nee dat is zo Wouter. dan zou je de tekstblokken nog moeten splitten op de spaties. Maar je hebt wel text-nodes en span-nodes in een array staan.

Toevoeging op 20/07/2014 14:47:51:

#text =>
SPAN => 'hallo'
#text => 'dit is'
SPAN => 'leuk'
#text =>

zo zou je array er uit kunnen zien.
 
Mark Hogeveen

Mark Hogeveen

20/07/2014 22:51:48
Quote Anchor link
Heel erg bedankt voor jullie hulp, maar het probleem is nog iets ingewikkelder.
Het gaat niet om het onderscheid tussen stukjes tekst gescheiden door spaties.
Als ik deze tekst heb:

Ze hebben weer regen voorspeld voor morgen

En ik wil op de zesde 'plek' een span invoegen, dan moet je dat zien als:
Ze heb|ben weer regen voorspeld voor morgen

En dus niet:
Ze hebben weer regen voorspeld | voor morgen

Bij dit invoegen van de span, mogen niet de bestaande elementen die eventueel in de tekst staan beschadigd worden.
Ik deed eerst dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
function insertAt(obj, pos, elemToInsert) {
    
    var nodesBefore = [];
    var nodesAfter = [];
    
    var lengthCounter = 0;
    
    var nodes = obj.childNodes;
    for(var i = 0; i < nodes.length; i++) {
        
        var node = nodes[i];
        
        if(lengthCounter + node.textContent.length <= pos) {
            
            nodesBefore.push(node);
            lengthCounter += node.textContent.length;
        }
        
        if(lengthCounter + node.textContent.length > pos) {
            
            var ntBefore = node.textContent.substring(0, pos - lengthCounter);
            var nBefore = document.createTextNode(ntBefore);
            nodesBefore.push(nBefore);
            
            var ntAfter = node.textContent.substring(pos - lengthCounter, node.textContent.length);
            console.log(ntAfter);
            var nAfter = document.createTextNode(nAfter);
            nodesAfter.push(nAfter);
        }
    }
    
    var nodeSet = [];
    nodeSet.concat(nodesBefore);
    nodeSet.push(elemToInsert);
    nodeSet.concat(nodesAfter);
    
    
    return nodeSet; // Is nu een array van de hele inhoud van het pre element
}


Maar dit werkt niet. Er komen dan steeds stukjes "undefined" in de tekst te staan, maar ik kan niet vinden wat er nou precies undefined is.
Gewijzigd op 20/07/2014 23:02:36 door Mark Hogeveen
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/07/2014 23:02:54
Quote Anchor link
Maar hoe weet jouw script waar de span moet komen? is dat een kwestie van karakters tellen? en zijn het alleen span's die in de tekst voorkomen of ook nog andere html elementen?


Toevoeging op 20/07/2014 23:07:03:

Jij wilt dus een span in een span. dat maakt het inderdaad wel veel ingewikkelder omdat dit tot een 'oneindige' diepte kan. Hier zul je dan in ieder geval een recursive function voor moeten maken.
Gewijzigd op 20/07/2014 23:11:37 door Frank Nietbelangrijk
 
Wouter J

Wouter J

21/07/2014 09:18:13
Quote Anchor link
Een voorbeeldje van zo'n recursieve functie: http://jsbin.com/bubew/3/edit
 
Mark Hogeveen

Mark Hogeveen

21/07/2014 11:15:46
Quote Anchor link
Ja! Wat Wouter heeft is precies wat ik wil. Allemaal bedankt voor jullie voorbeelden en hulp.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.