afbeelding wijzigen met jQuery

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Donny Wie weet

Donny Wie weet

13/01/2013 14:53:47
Quote Anchor link
Hoi allemaal,

Ik heb een drop down menu in jquery, en ik wil dat als je 1 kiest, de waarde van de img src veranderd. Ik krijg dit alleen niet voor elkaar en weet niet welke stap ik nu moet maken. Kan iemand me op weg helpen?

Groeten Donny

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
<select id="image"><option value="1">1</option><option value="2">2</option><option value="3">3</option></select>
<img src="">
<script>
(function(){
    var img = $('img');
    $('select', '#image').on('click', function() {
        var $this = $(this)
        
        $(this)
            .siblings('select', '#image')
            console.log();
    
    });
    console.log(this);
})();
</script>
 
PHP hulp

PHP hulp

25/04/2024 05:33:19
 
Nick Dijkstra

Nick Dijkstra

13/01/2013 16:23:33
Quote Anchor link
Zoiets?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<select id="image"><option value="1.png">1</option><option value="2.png">2</option><option value="3.png">3</option></select>
<img src="">
<script>
$(function(){
    $("#image").change(function(e) {
        $("img").attr('src', $(this).val());
    });
});
</script>


Edit:
Gewijzigd op 13/01/2013 16:34:50 door Nick Dijkstra
 
Donny Wie weet

Donny Wie weet

14/01/2013 02:46:17
Quote Anchor link
Ja zoiets. ALleen wil ik dat er in de option value geen .png komt te staan. Dit heb ik zelf aan kunnen passen. Nu wil ik ook de CSS mee laten veranderen. Ik krijg het alleen niet voor elkaar om een naam .css mee te geven... Mijn code tot nu toe:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<script>
$(function(){
    $("#image").change(function(e) {
        $("img").attr('src', $(this).val() + '.png');
        var $this = $(this),
                stylesheet = $this.data('#image')
        $("link").attr('href', stylesheet + '.css');
    });
});
</script>


Edit:

Het is gelukt. Laatste vraag:

Ik wil nu de H1 id=header text wijzigen. Alleen wil ik dit niet wijzigen naar hetgene waarbij de value staat, maar hetgene <option>Hiertussen</option> of hetgeen in de title=tekst. Of eventueel iets anders dat in de <option> geplaatst kan worden, maa rniet zichtbaar is voor een ander.

D.m.v. PHP wordt het drop down menu opgehaald, ik doe het nu enkelt in HTML om het uit te proberen :)
Gewijzigd op 14/01/2013 02:54:31 door Donny Wie weet
 
Elwin - Fratsloos

Elwin - Fratsloos

14/01/2013 09:54:04
Quote Anchor link
Je kan met .html() de inhoud van een option ophalen. De inhoud van de geselecteerde option wegschrijven in id 'header' is dan zoiets:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$('#header').html($(this).find(':selected').html());
 
Donny Wie weet

Donny Wie weet

14/01/2013 12:13:11
Quote Anchor link
Oke, dat werkt ook, alleen nu wil ik de title van de option gebruiken.
 
No One

No One

14/01/2013 12:30:38
Quote Anchor link
title?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$('#header').html($(this).find(':selected').attr("title"));
 
Donny Wie weet

Donny Wie weet

14/01/2013 12:44:56
Quote Anchor link
Oke, het laatste waar ik niet uit kom:

Ik heb 2x <link rel=stylesheet> 1 met de naam style en 1 met de naam template. Nu wil ik onClick, de link wijzigen. De href. Dit lukt wel, maar hij wordt gewijzigd bij bijde links, en wil alleen laten wijzigen bij de id=stylesheet. Ik heb geprobeerd:

$("link", "#stylesheet").attr('href', $(this).val() + '.css');

Dit werkte niet. jQ denkt toch als: selecteer de LINK met het ID/CLASS van 'waarde'. Van deze LINK geven we de ATTR(attribute) HREF de waarde $(this) (waarop geklikt is)

Of denk ik nu verkeerd?
 
Kris Peeters

Kris Peeters

14/01/2013 13:13:10
Quote Anchor link
Al eens geprobeerd om die id dan ook toe te voegen aan het element?

<link rel="stylesheet" id="my_stylesheet">

$("#my_stylesheet").attr('href', $(this).val() + '.css');
 
Donny Wie weet

Donny Wie weet

14/01/2013 14:41:30
Quote Anchor link
Kris: bedankt :)

Laatste en een heel vaag probleem:

Als ik een selectie maak, dan wordt de link geupdate, maar mijn CSS file blijft standaard... De href veranderd naar de goede waarde, maar wordt niet ingevoerd... Enig idee? Mijn code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<script>
$(function(){
    $("#image").change(function(e) {
        $("img").attr('src', 'imgs/' + $(this).val() + '.png');
        $("#stylesheet").attr('href', 'css/template_' + $(this).val() + '.css');
        $("#template").attr('href', 'css/template_' + $(this).val() + '.css');
        $('#header1').html($(this).find(':selected').html());
        
    });
});
</script>
 
Kris Peeters

Kris Peeters

14/01/2013 15:06:57
Quote Anchor link
Dat zou ik niet verwachten.
Kijk, probeer dit eens:

black.css
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
* {
  color: #666666;
  background-color: #000000;
}


white.css
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
* {
  color: #999999;
  background-color: #ffffff;
}


index.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<link rel="stylesheet" id="stylesheet" href="white.css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script>
$(function() {
  $('p').on('click', function(e) {
    var color = $(this).html();
    $("#stylesheet").attr('href', color);
  })
});
</script>
<p>black.css</p>
<p>white.css</p>


Bij mij werkt het.
 



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.