Durchsuche Foren

(Erweiterte Suche)

Foren-Statistiken
» Mitglieder: 43.450
» Neuestes Mitglied: manalitourpackage
» Foren-Themen: 511
» Foren-Beiträge: 2.105

Komplettstatistiken

Benutzer Online
Momentan sind 141 Benutzer online
» 0 Mitglieder
» 138 Gäste
Bing, Facebook, Google

Aktive Themen
CSS Animationen verbinden
Forum: Css
Letzter Beitrag: ajmanproperties1
Vor 7 Stunden
» Antworten: 9
» Ansichten: 677
Explore the Enchanting Be...
Forum: Javascript
Letzter Beitrag: manalitourpackage
Gestern, 14:20
» Antworten: 0
» Ansichten: 11
Addons blockiert
Forum: Hilfe bei Add-ons programmieren
Letzter Beitrag: jenniferbeals
Gestern, 00:28
» Antworten: 3
» Ansichten: 996
Handle Your Academic Burd...
Forum: Javascript
Letzter Beitrag: shane56
30.04.2024, 12:27
» Antworten: 0
» Ansichten: 30
Why is it important to fo...
Forum: Javascript
Letzter Beitrag: azaviona
30.04.2024, 10:09
» Antworten: 0
» Ansichten: 18
Memorable Experience With...
Forum: Javascript
Letzter Beitrag: chandadelhiaerocity
29.04.2024, 10:36
» Antworten: 0
» Ansichten: 32
Escort Service in Aerocit...
Forum: Javascript
Letzter Beitrag: chandadelhiaerocity
29.04.2024, 10:36
» Antworten: 0
» Ansichten: 30
div(tabelle) neugeladen b...
Forum: Javascript
Letzter Beitrag: black79
26.04.2024, 16:40
» Antworten: 4
» Ansichten: 127
What are the psychologica...
Forum: Css
Letzter Beitrag: azaviona
26.04.2024, 07:58
» Antworten: 0
» Ansichten: 46
Ajax Abfrage
Forum: Php
Letzter Beitrag: taxlegit24
25.04.2024, 06:43
» Antworten: 3
» Ansichten: 429

  JavaScript für Sprachumleitung funktioniert nicht
Geschrieben von: alhai007 - 15.11.2022, 12:16 - Forum: Javascript - Antworten (4)

Hallo,

es geht um eine mehrsprachige Website, die ich jeweils automatisch auf die jeweilige eingestellte Browsersprache weiterleiten will. Grundlegend ist deutsch eingestellt, dann eben noch /it/ + /en/ - italiensich und englisch. Das folgende Script funkt in der Testumgebung aber eben nicht in der Liveschaltung. In der Liveschaltung wiederholen sich einfach die Alert-Konstrukte wie wenn eine Schleife auf unendlich laufen würde. Nehme ich die Alertkonstrukte heraus ( waren ohnehin nur eine Hilfsfunktion ) bauen sich mehrfach Browsertabs von der ständigen Wiederholung auf. ????


Hier mal das Script, vllt. kann jemand helfen! VG und schon mal danke.

<script type="text/javascript">

var userLang = navigator.language || navigator.userLanguage;
alert ("The language is: " + userLang);

if ( userLang=="de") {
alert ( " DIE SEITE wird in Deutsch geladen");
document.location.href='https://domain.com';
}

else if ( userLang=="en" || userLang=="en-US") {
alert ( " DIE SEITE wird in Englisch geladen");
document.location.href='https://domain.com/en/';
}

else if ( userLang=="it") {
alert ( " DIE SEITE wird in Italienisch geladen");
document.location.href='https://domain.com/it/';
}

else {
alert ("This Site here is not available in your language");
document.location.href='https://domain.com';
}

</script>

Drucke diesen Beitrag

  PHP Hook für Redirects in WPML >> Wordpress
Geschrieben von: alhai007 - 15.11.2022, 12:11 - Forum: Php - Antworten (1)

Hallo,
bin Anfänger in PHP, verstehe schon ein wenig vom Codieren in PHP, aber halt noch nicht so ganz.
Möchte beim Plugin WPML ( Wordpress ) einen Hook einhängen, der sich automatisch an der Browsersprache orientiert. Also es sind insgesamt 3 Sprachen, dt ist voreingestellt als Hauptsprache. Wenn jetzt jemand eine Browsersprache in italienisch vorweist soll eben auf /it/ umgeleitet werden, bei englisch entsprechend. Die Hauptdomain bleibt deutsch. Hier mal der Hook, der von WPML angeboten wird. Die Frage wer kann mir helfen bzw. Tipps geben, den Hook auszuprogrammieren. Es geht hier darum, die $params nach meinen oben erwünschten Vorhaben richtig zu codieren - auch z.B. für englisch die Browsersprache en_us ... zu berücksichtigen. Danke schon mal im Vorfeld für Eure Mühe.

function example_callback( $params ) {
global $post;
// Redirect the French language to the home page if the current page ID is 123
if ( $post->ID === 123 ) {
$params['pageLanguage'] = 'en';
$params['languageUrls'] = [ 'fr' => 'http://example.com/fr/' ];
}
return $params;
}
add_filter( 'wpml_browser_redirect_language_params', 'example_callback' );

Drucke diesen Beitrag

  Mittels JavaScript ein Span Element anklicken
Geschrieben von: use - 14.11.2022, 09:32 - Forum: Javascript - Antworten (2)

Hallo Zusammen,



ich habe folegenden HTML Code:



Code:
<div class="row toggle-demo">
    <label class="switch-light-gray switch-holo-gray">
        <input type="checkbox" id="myCheckBox" onClick="fnCheckBox()">

        <span class="large-3 columns float-left">
            <span onclick="Start()" id="spanStart">Start</span>
            <span onclick="Stop()" id="spanStop">Stop</span>
            <a></a>
        </span>
    </label>
</div>




Mittels eines Buttons führe ich folgenden JavaScript Code aus:



Code:
document.getElementById('myCheckBox').click();




Dann wird die Funktion der Checkbox "fnCheckBox ausgeführt. Das gleiche würde ich jetzt gerne für eins der Span Elemente machen, allerdings wird bei einem Code:




Code:
document.getElementById('spanStart').click()



nicht die Funktion Start() ausgeführt.


Gibt es eine Möglichkeit, die Funktion, die im Span hinterlegt ist auszuführen, wenn der Span über JavaScript Code angeklickt wird? (Nicht durch einen Mausklick)




Vielen Dank

Drucke diesen Beitrag

  Ein <select> aus einer Verkettung als Ausgabe darstellen
Geschrieben von: wuppti - 13.11.2022, 10:47 - Forum: Javascript - Antworten (9)

Hallo zusammen,
meine Kenntnisse in Javascript sind als "extrem Beginner" einzustufen, von daher benötige ich bitte Hilfe oder Denkanstöße

Es geht um ein Formularscript, indem ich ein mehrfach verkettetes Javascript einsetzen möchte. das Grundgerüst ist nicht von mir, dies habe ich durch Sucherei im Netz gefunden und entsprechend bis zu dem heutigen Stand umgebaut. 
Jetzt stellt sich mir die Frage, wie ich den "Preis" nicht als <select> sondern als feste direkte Ausgabe in dem Formular darstelle.
Ich möchte also nicht in dem Preisfeld "bitte wählen" stehen haben sondern sofort den Preis, der ja jeder Anwendung zugeordnet ist. 
Wie bewerkstellige ich das ?
Versuche, in dem Formular mit <input> oder <ng-model> den Wert zu bekommen, sind kläglich gescheitert.

Ich bedanke mich bereits an dieser Stelle für alle Vorschläge oder Lösungen, die mein Problem fixen.

hier das script und im Anschluss das Formular als Teil Auszug

Code:
<noscript><div align="center" id="nojava">
Um den vollen Leistungsumfang unseres Shops nutzen zu können, aktivieren Sie bitte JavaScript in Ihren Browsereinstellungen.</div>
<br />
</noscript>
<script>
// Code steht in {...} wegen eines Frickl-Bugs
// Nun denkt der Linter, dies sei ein JSON-String und meckert auch. Bitte ignorieren!
{
    document.addEventListener('DOMContentLoaded', function () {
        const form = document.forms.terminauswahl;
        const gutscheinCtrl = new GutscheinController(form.gutschein);
        const anwendungCtrl = new AnwendungController(form.anwendung, gutscheinCtrl);
        const terminCtrl = new TerminController(form.termin, anwendungCtrl);
        const preisCtrl = new PreisController(form.preis, terminCtrl);
        preisCtrl.addEventListener("change", preisChanged)
        gutscheinCtrl.mapData(data)
    
        function preisChanged(event) {
            let preisCtrl = event.target;
            let terminCtrl = preisCtrl.parentNode;
            let anwendungCtrl = terminCtrl.parentNode;
            let gutscheinCtrl = anwendungCtrl.parentNode;
            let ausgabe = document.getElementById('auswahl');
            ausgabe.textContent = preisCtrl.selectedKey != ""
                ?    `${gutscheinCtrl.selectedKey}:${gutscheinCtrl.selectedObject.name} / `+
                    `${anwendungCtrl.selectedKey}:${anwendungCtrl.selectedObject.thema} / ` +
                    `${terminCtrl.selectedKey}:${terminCtrl.selectedObject.zeit} / ` +
                    `${preisCtrl.selectedKey}:${preisCtrl.selectedObject.euro}`     :    "";
        }
    });

        class SelectionController extends EventTarget {
        constructor(selectElement, parentNode = null) {
            super();        // Pflicht: Konstruktor der Superklasse aufrufen
            if (!(selectElement instanceof HTMLSelectElement)) {
                throw new Error("Controller-Objekt benötigt ein select Element als ersten Parameter");
            }
            if (parentNode && !(parentNode instanceof SelectionController)) {
                throw new Error("Controller-Objekt benötigt einen SelectionController als zweiten Parameter");
            }

            this.selectElement = selectElement;
            this.parentNode = parentNode;

            this.selectElement.addEventListener("change", event => this._handleChangeEvent(event))
            if (parentNode) {
                parentNode.addEventListener("change", event => this.mapData(event.selectedObject));
            }
        }

        mapData(dataSource) {
            this.dataSource = dataSource;
   
            if (typeof this.getValueList == "function") {

                removeOptions(this.selectElement);

                const options = dataSource && this.getValueList(dataSource);
                if (!options || !options.length) {
                    setToDisabled(this.selectElement)
                } else {
                    setToEnabled(this.selectElement, options);
                }
            }

            this.selectElement.dispatchEvent(new Event("change"));

            function removeOptions(selectElement) {
                while (selectElement.length > 0)
                    selectElement.remove(0);
            }

            function setToDisabled(selectElement) {
                addOption(selectElement, "", "------");
                selectElement.disabled = true;
            }

            function setToEnabled(selectElement, options) {
                addOption(selectElement, "", "Bitte wählen:");

                for (var optionData of options) {
                    addOption(selectElement, optionData.value, optionData.text);
                }
                selectElement.disabled = false;
            }
   
            function addOption(selectElement, value, text) {
                let option = document.createElement("option");
                option.value = value;
                option.text = text
                selectElement.add(option);
            }
        }

        getValue(key) {
            throw new TypeError("Die abstrakte Methode 'getValue' wurde nicht implementiert!");
        }

        get selectedKey() {
            return this.selectElement.value;
        }
    
        get selectedObject() {
            return this.dataSource ? this.getValue(this.dataSource, this.selectElement.value) : null;
        }

        _handleChangeEvent(event) {
            let nodeChangeEvent = new Event("change");
            nodeChangeEvent.selectedObject = this.selectedObject;
            this.dispatchEvent(nodeChangeEvent);
        }
    }

    class GutscheinController extends SelectionController {
        constructor(selectElement) {
            super(selectElement, null);
        }

        getValue(quelle, gutscheinId) {
            return quelle.find(gutschein => gutschein.id == gutscheinId); 
        }
    }

    class AnwendungController extends SelectionController {
        constructor(selectElement, parentController) {
        super(selectElement, parentController);
        }
        getValueList(gutschein) {
            return gutschein.massagen.map(anwendung => ({ value: anwendung.nummer, text: anwendung.thema }));
        }
        getValue(gutschein, anwendungNr) {
            return gutschein.massagen.find(anwendung => anwendung.nummer == anwendungNr);
        }
    }

    class TerminController extends SelectionController {
        constructor(selectElement, parentController) {
            super(selectElement, parentController);
        }
        getValueList(anwendung) {
            return anwendung.termine.map(termin => ({ value: termin.id, text: termin.zeit }));
        }
        getValue(anwendung, terminId) {
            return anwendung.termine.find(termin => termin.id == terminId);
        }
    }
   class PreisController extends SelectionController {
        constructor(selectElement, parentController) {
            super(selectElement, parentController);
        }
        getValueList(termin) {
            return termin.preise.map(preis => ({
                value: preis.id,
                text: preis.euro
            }));
        }
        getValue(termin, preisId) {
            return termin.preise.find(preis => preis.id == preisId);
        }
    }
}
var data = [
    {    id: "Massage",
        name: "Massage-Angebote",
        massagen: [
            {    nummer: "Thai Hand-, oder Kopf/Gesichtsmassage",
                thema: "Thai Hand-, oder Kopf/Gesichtsmassage",
                termine: [
                    { id: "30 min", zeit: "30 min",
                                preise: [
                                    { id: "30,00 €", euro: "30,00 €" }
                                            ]
                                    }
                         ]
            },
            {    nummer: "Thai Schulter-/Nackenmassage",
                thema: "Thai Schulter-/Nackenmassage",
                termine: [
                    { id: "30 min", zeit: "30 min",
                                preise: [
                                    { id: "30,00 €", euro: "30,00 €" }
                                            ]
                                    },
                    { id: "60 min", zeit: "60 min",
                                preise: [
                                    { id: "49,00 €", euro: "49,00 €" }
                                            ]
                                    }
                ]
            },
        ]
    }
];
</script>


PHP-Code:
<form action="./php/gutschein.php" method="post" name="auswahl">
    <
form class="needs-validation" novalidate>
    <
div class="form-row">
        <
div class="form-group col-md-12">
            <
label class="control-label">Gutschein für:
                <
select id="gutschein" name="Gutschein" class="form-control" value="" required>
                    <
option value="">Bitte wählen:</option>
                    <
option value="Massage">Massage-Angebote</option>
                    <
option value="xxxx">xxx</option>
                    <
option value="yyyy">yyyy</option>
                    <
option value="zzzz">zzzz</option>
                </
select>
            </
label>
            <
label class="control-label">Anwendung:
                <
select id="anwendung" name="Anwendung" class="form-control" disabled value="" required>
                    <
option value="">------</option>
                </
select>
            </
label>
            <
label class="control-label">Dauer:
                <
select id="termin" name="Dauer" class="form-control" disabled value="" type="hidden">
                    <
option value="">------</option>
                </
select>
            </
label>
                        <label class="control-label">Preis:
                <
select id="preis" name="Preis" class="form-control" disabled value="" type="hidden">
                    <
option value="">------</option>
                </
select>
            </
label>
        </
div>
    </
div>
</
form>
</
form

Drucke diesen Beitrag

  JS replace
Geschrieben von: manfred.prefi@freenet.de - 08.11.2022, 23:59 - Forum: Javascript - Antworten (3)

Hallo guten Abend,
ich habe eine Web-site, die aus ca 20 html-Seiten besteht, die hauptsächlich aus Fließext unter p-class-bericht bestehen.
Innerhalb des Textes sind an verschiedenen Stellen Platzhalter in Form von "aa-12", "aa-13" usw. enthalten. Diese Platzhalter möchte ich mittels JS durch html-tags (img-tags) ersetzen.
Wie kann ich das bewerkstelligen? Der Aufbau der img-tags ist gelöst, es geht nur um das Ersetzen der Platzhalter durch die Tags.
Vielen Dank im Voraus für jede Hilfe - auch der Hinweis, dass es nicht geht.

Drucke diesen Beitrag

  Java Script Websocket closes immediately after creation
Geschrieben von: DavidB - 08.11.2022, 14:56 - Forum: Javascript - Antworten (1)

Hey, 
I'm relatively new to the java script world,
I'm trying to send a message with a java script websocket.

Code:
var ws = new WebSocket("ws://".concat(host_ip.concat(":8765")));

document.addEventListener('keyup', (e) => {
        //If I create the websocket here it works
        //var ws = new WebSocket("ws://".concat(host_ip.concat(":8765")));
        ws.onopen = function(event){
            console.log(ws);
            ws.send("TestMessage");
        }
});
If I create the websocket outside the addEventListener method the connection is closed (ready state 3)
when I try to send "TestMessage" by releasing the 'keyup' key.

If I create the websocket within the addEventListener method everything works just fine.
However when I'm sending too many messages successively the connection stops.

Has someone an idea why it does not work in the first case? Is this maybe some js variable out of scope error?

Drucke diesen Beitrag

  Java Script Websocket closes connection directly after creation
Geschrieben von: JS_learner - 08.11.2022, 13:23 - Forum: Javascript - Keine Antworten

Hey I'm relatively new to the java script world,
I'm trying to send a message with a java script websocket.

Code:
var ws = new WebSocket("ws://192.168.179.52:8765"));
document.addEventListener('keyup', (e) => {
    //when I create the websocket here it works
    //var ws = new WebSocket("ws://192.168.179.52:8765")));
    ws.onopen = function(event){
            console.log(ws);
            ws.send("TestMessage");
    }
});

If I create the websocket variable outside of my addEventListener the websocket 
will be closed immediately (ready state 3) when I try to send "TestMessage".
If I create the websocket within the addEventListener method everything works just fine.
However when I'm sending too many messages successively the connection stops.
Has someone an idea why it does not work in the first case? Is this maybe some js variable out of scope error?

Drucke diesen Beitrag

  Soundausgabe mit audio.play() und onmouseover
Geschrieben von: ollelinse - 06.11.2022, 18:58 - Forum: Javascript - Antworten (13)

Hallo in die Runde. Ich erstelle monatlich ein Online-Comic-Kalenderblatt und lasse mir dabei unter Verwendung von JavaScript immer wieder neue Effekte einfallen, die Sache etwas interessanter zu machen. Klappt auch im Prinzip sehr gut - aber jetzt könnte ich mal einen Hinweis gebrauchen. Schon des Öfteren habe ich mit der einfachen Funktion:

function Sound(s) {
  var audio = new Audio(s);
  audio.volume = 0.5;
  audio.play();
}


Soundeffekte bei einem onclick-Ereignis aus einem "area shape" eingebunden. Diesmal soll zusätzlich auch bei mouseover

Drucke diesen Beitrag

  Debuggen mit Mozilla Firefox: Variablen überwachen
Geschrieben von: nbergmann - 06.11.2022, 16:55 - Forum: Javascript - Antworten (1)

Mein Lehrbuch erklärt das für Chrome so:
Registerkarte "Watch" unten links anklicken.
Wie geht das mit Mozilla Firefox? Ich finde in deren Debug-Fenster einen derartigen Button nicht.

Drucke diesen Beitrag

Big Grin Telegram Bot Javascript
Geschrieben von: PalaAzab - 04.11.2022, 02:40 - Forum: Brauche Javascript / Userscript - Antworten (4)

Hallo zsm,
ich bräuchte Hilfe bei einem Javascript.
Habe ein Script, für einen Telegram Bot zum posten und Bestellungen annehmen von einem Kollegen bekommen, in diesem Script sind die Daten von ihm noch eingeben und müssten mit meinen Daten ersetzt werden. Leider habe ich keinerlei Erfahrung mit Javascripts und mein Kollege erst recht nicht^^
Der Bot soll ein paar Produkte von meinem Google Sheet bekommen, nachdem ich diese dort eingetragen habe und auch falls Bestellungen geordert werden (was leider nicht oft vorkommt Big Grin ) annehmen.
Würde mich freuen, wenn sich jmd. meldet und mir helfen könnte bzw. den Script sich mal angucken könnte

Thx Cool Cool

Drucke diesen Beitrag