[javascript] replace en file_get_contents
ik heb het volgende :
Quote:
document.body.innerHTML = document.body.innerHTML.replace('klaas', 'jan');
als de pagina er zo uitziet :
hallo ik ben klaas.
word dit netjes
hallo ik ben jan.
alleen als de pagina er zo ziet.
klaas en klaas gaan naar de film.
word dat :
jan en klaas gaan naar de film.
terwijl die 2de klaas ook jan moet worden.
iemand die mij zou kunnen helpen?
Groet,
Olivier
Gewijzigd op 16/08/2012 18:35:05 door Olivier -
misschien kan een stukje code helpen zoals wat html?
het manifest script ziet er zo uit :
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{
"name": "one2xs manager",
"version": "1.1",
"manifest_version": 2,
"description": "one2xs in 1 klik.",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "frame.html"
},
"permissions": [
"tabs", "http://one2xs.com/*"
],
"content_scripts": [
{
"matches": ["http://www.one2xs.com/*"],
"css": ["style.css"],
"js": ["jquery.js", "javascript.js"]
}
]
}
"name": "one2xs manager",
"version": "1.1",
"manifest_version": 2,
"description": "one2xs in 1 klik.",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "frame.html"
},
"permissions": [
"tabs", "http://one2xs.com/*"
],
"content_scripts": [
{
"matches": ["http://www.one2xs.com/*"],
"css": ["style.css"],
"js": ["jquery.js", "javascript.js"]
}
]
}
frame ziet er zo uit :
Code (php)
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
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
<html>
<head>
<title>geen titel</title>
<style>
body {
padding:0;
margin:0;
background:#fff url(balk.jpg);
background-repeat:repeat-x;
font-family: Corbel;
letter-spacing:-0.11em;
}
#center {
width:400px;
margin:0 auto;
}
#title {
width:400px;
height:30px;
text-align:center;
margin-top:4px;
color:#fff;
float:left;
}
#box {
width:400px;
float:left;
}
</style>
<div id="center">
<div id="title">
one2xs manager
</div>
<div id="box">
blalblalbla
</div>
</div>
<head>
<title>geen titel</title>
<style>
body {
padding:0;
margin:0;
background:#fff url(balk.jpg);
background-repeat:repeat-x;
font-family: Corbel;
letter-spacing:-0.11em;
}
#center {
width:400px;
margin:0 auto;
}
#title {
width:400px;
height:30px;
text-align:center;
margin-top:4px;
color:#fff;
float:left;
}
#box {
width:400px;
float:left;
}
</style>
<div id="center">
<div id="title">
one2xs manager
</div>
<div id="box">
blalblalbla
</div>
</div>
document.body.innerHTML = document.body.innerHTML.replace(/klaas/g, 'jan');
Case-insensitive (maakt niet uit of het hoofletters zijn of niet).
document.body.innerHTML = document.body.innerHTML.replace(/klaas/gi, 'jan');
is het ook mogelijk om het wel uit te laten maken of het hoofdletters zijn wat dit moet worden verangen :
Lid
en in de source staat
border: 1px solid #999;
Groet ,
Olivier
Dus dit is zonder hoodletter gevoeligheid:
document.body.innerHTML = document.body.innerHTML.replace(/klaas/gi, 'jan');
En dit is met hoofdletter gevoeligheid ( want er staat geen i van insensitive )
document.body.innerHTML = document.body.innerHTML.replace(/klaas/g, 'jan');
De g staat voor Global , wat betekent dat het om de hele text gaat en niet om het eerste woord.
Gewijzigd op 16/08/2012 18:53:39 door Leon blabla
is er ook een manier om dit in javascript te doen :
Code (php)
1
2
3
4
2
3
4
<?php
$var =file_get_contents("http://www.site.nl");
$explode = explode("welkom",$var);
?>
$var =file_get_contents("http://www.site.nl");
$explode = explode("welkom",$var);
?>
Groet ,
Olivier
En ik heb geen idee of er een synoniem voor file_get_contents is, waarschijnlijk heb je daar AJAX voor nodig.
In ieder geval kun je hier wat meer lezen over de .split() Method:
http://www.w3schools.com/jsref/jsref_split.asp
Leon, liever geen W3schools linkt geven (zie ook http://w3fools.com/ ). Een link naar de documentatie pagina van Mozilla Developers Netwerk is veel beter.
ik heb het volgende :
ik maak een chrome extentie en hiervoor word javascript gebruikt.
de bedoeling is dat mijn script dit doet :
er is een bepaalde lijn in de source die meerdere keren voor komt:
nu is de bedoeling dat het script dit doet :
hij opent : http://www.one2xs.com/profiel/bekijk?gebruiker=IETS
hij split het volgende :
{vanaf hier}posts : IETS{tot hier}
als iemand mij kan helpen met een opsentje / script ben ik je erg dankbaar ik kom er namelijk niet uit.
Groet ,
Olivier
Sorry ik snap het niet echt, moet het laatste IETS weggehaald worden of vervangen uit de link ?
Groet ,
Olivier
http://www.one2xs.com/profiel/bekijk?gebruiker=
replacen voor niks, en wat je dan overhoud is dus de gebruikersnaam.
ja maar de bedoeling is dat hij de pagina opent met daarin de gebruikersnaam die van alles kan zijn en dan een woord zoekt..
Dus hij veranderd de href attribute in de <a> tag ?
het is een chrome extentie waardoor je javascript kan uitvoeren op de pagina.
helaas geen php dat zou dan extern moeten en dat geeft een mega load.
de bedoeling is dus dat hij zoekt naar :
<a href="http://www.one2xs.com/profiel/bekijk?gebruiker=IETS">IETS</a>
dit iets is dus de gebruikersnaam van de gebruiker.
dus hij moet zoeken naar een url waar die dingen IETS alles kan zijn
dus bijvoorbeeld
<a href="http://www.one2xs.com/profiel/bekijk?gebruiker=jan">jan</a>
<a href="http://www.one2xs.com/profiel/bekijk?gebruiker=olivier">olivier</a>
als hij ze gevonden heeft moet hij via javascript die pagina openen
zoekt naar de cijfer combinatie na het woord posts en die een variable geeft.
dat gaat via explode in javascript in dit geval split maar ik heb geen idee hoe dat moet.
hoe dit dan in zijn werking moet gaan:
hij explode de naam uit de url replaced naam op de pagina met
document.body.innerHTML = document.body.innerHTML.replace(/variable gebruikersnaam/gi, 'variable gebruikersnaam de explode postcount');
als dit werkt ben ik ongelofelijk blij
Maar hoezo wil je dit bereiken ?
omdat ik een addon voor een forum maak waar ik het posts count wil weergeven van de gerbuiker
Dus je will doormiddel van javascript een cijfer ophalen van een andere pagina , en de naam van de gebruiker doorgeven ?
dus eigenlijk moet hij de naam ophalen en dan die pagina bezoeken iets explode daar het getal van mee terug nemen en dan de gebruikersnaam replace met de gebruikersnaam en het getal dat hij heeft opgehaald