tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von fpvz
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
154
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    elyion_g2 elyion_g2 ist offline Rookie
    Registriert seit
    Nov 2011
    Beiträge
    5
    Hallo erstmal,

    Ich bin hier neu und hoffe es richtig zu machen

    Ich hoffe ihr könnt mir helfen. Folgendes Problem:

    -> Ich möchte gerne per Javascript und Ajax in einem DIV einen inhalt laden. bisher habe ich dieses Script:
    Code :
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    
    <script type="text/javascript">
     
    /***********************************************
    * Dynamic Ajax Content- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
    * This notice MUST stay intact for legal use
    * Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
    ***********************************************/
     
    var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
    var loadedobjects=""
    var rootdomain="http://"+window.location.hostname
    var bustcacheparameter=""
     
    function ajaxpage(url, containerid){
    var page_request = false
    if (window.XMLHttpRequest) // if Mozilla, Safari etc
    page_request = new XMLHttpRequest()
    else if (window.ActiveXObject){ // if IE
    try {
    page_request = new ActiveXObject("Msxml2.XMLHTTP")
    } 
    catch (e){
    try{
    page_request = new ActiveXObject("Microsoft.XMLHTTP")
    }
    catch (e){}
    }
    }
    else
    return false
    page_request.onreadystatechange=function(){
    loadpage(page_request, containerid)
    }
    if (bustcachevar) //if bust caching of external page
    bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
    page_request.open('GET', url+bustcacheparameter, true)
    page_request.send(null)
    }
     
    function loadpage(page_request, containerid){
    if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
    document.getElementById(containerid).innerHTML=page_request.responseText
    }
     
    function loadobjs(){
    if (!document.getElementById)
    return
    for (i=0; i<arguments.length; i++){
    var file=arguments[i]
    var fileref=""
    if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
    if (file.indexOf(".js")!=-1){ //If object is a js file
    fileref=document.createElement('script')
    fileref.setAttribute("type","text/javascript");
    fileref.setAttribute("src", file);
    }
    else if (file.indexOf(".css")!=-1){ //If object is a css file
    fileref=document.createElement("link")
    fileref.setAttribute("rel", "stylesheet");
    fileref.setAttribute("type", "text/css");
    fileref.setAttribute("href", file);
    }
    }
    if (fileref!=""){
    document.getElementsByTagName("head").item(0).appendChild(fileref)
    loadedobjects+=file+" " //Remember this object as being already added to page
    }
    }
    }
     
    </script>
    <script type="text/javascript">
    window.onload = function() {
       var allLinks;
       if (document.getElementsByClassName)
          allLinks = document.getElementsByClassName("Link_Class_einfügen");
       else
          allLinks = getElementsByClassName(document, "A", "Link_Class_einfügen");
     
       for(var i=0; i<allLinks.length; i++)
       {
          allLinks[i].onclick = function() {
             ajaxpage(this.href,'div_id');
             return false;
          }
       }
    }
     
    function getElementsByClassName(oElm, strTagName, strClassName){
        var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
        var arrReturnElements = new Array();
        strClassName = strClassName.replace(/\-/g, "\\-");
        var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
        var oElement;
        for(var i=0; i<arrElements.length; i++){
            oElement = arrElements[i];      
            if(oRegExp.test(oElement.className)){
                arrReturnElements.push(oElement);
            }   
        }
        return (arrReturnElements);
    }
    </script>

    Durch dass kann ich von einem Link der einer bestimmter klasse zugewiesen wurde, in einen div mit einer bestimmten ID einen inhalt einfügen.

    Nun möchte ich aber, dass ich z.B. einen zweiten Link machen kann, der dann die selbe funktion ausführt, nur auf einen anderen div mit einer anderen ID...

    Ich hoffe ihr kommt ein wenig nach!


    Ich danke euch vielmals für eure Antworten!
     

  2. #2
    fpvz fpvz ist offline Mitglied Silber
    Registriert seit
    Oct 2011
    Beiträge
    74
    Versuch mal in Zeile 83 'div.id' durch this.title zu ersetzen.
    Im Title-Attribut des Links kloppst du dann jeweils die id des jeweiligen divs.

    // ungetestet, versuch es einfach mal
     

  3. #3
    elyion_g2 elyion_g2 ist offline Rookie
    Registriert seit
    Nov 2011
    Beiträge
    5
    Zitat Zitat von fpvz Beitrag anzeigen
    Versuch mal in Zeile 83 'div.id' durch this.title zu ersetzen.
    Im Title-Attribut des Links kloppst du dann jeweils die id des jeweiligen divs.

    // ungetestet, versuch es einfach mal
    meinst du das etwa so:

    Code :
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    
    <script type="text/javascript">
     
    /***********************************************
    * Dynamic Ajax Content- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
    * This notice MUST stay intact for legal use
    * Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
    ***********************************************/
     
    var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
    var loadedobjects=""
    var rootdomain="http://"+window.location.hostname
    var bustcacheparameter=""
     
    function ajaxpage(url, containerid){
    var page_request = false
    if (window.XMLHttpRequest) // if Mozilla, Safari etc
    page_request = new XMLHttpRequest()
    else if (window.ActiveXObject){ // if IE
    try {
    page_request = new ActiveXObject("Msxml2.XMLHTTP")
    } 
    catch (e){
    try{
    page_request = new ActiveXObject("Microsoft.XMLHTTP")
    }
    catch (e){}
    }
    }
    else
    return false
    page_request.onreadystatechange=function(){
    loadpage(page_request, containerid)
    }
    if (bustcachevar) //if bust caching of external page
    bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
    page_request.open('GET', url+bustcacheparameter, true)
    page_request.send(null)
    }
     
    function loadpage(page_request, containerid){
    if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
    document.getElementById(containerid).innerHTML=page_request.responseText
    }
     
    function loadobjs(){
    if (!document.getElementById)
    return
    for (i=0; i<arguments.length; i++){
    var file=arguments[i]
    var fileref=""
    if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
    if (file.indexOf(".js")!=-1){ //If object is a js file
    fileref=document.createElement('script')
    fileref.setAttribute("type","text/javascript");
    fileref.setAttribute("src", file);
    }
    else if (file.indexOf(".css")!=-1){ //If object is a css file
    fileref=document.createElement("link")
    fileref.setAttribute("rel", "stylesheet");
    fileref.setAttribute("type", "text/css");
    fileref.setAttribute("href", file);
    }
    }
    if (fileref!=""){
    document.getElementsByTagName("head").item(0).appendChild(fileref)
    loadedobjects+=file+" " //Remember this object as being already added to page
    }
    }
    }
     
    </script>
    <script type="text/javascript">
    window.onload = function() {
       var allLinks;
       if (document.getElementsByClassName)
          allLinks = document.getElementsByClassName("Link_Class_einfügen");
       else
          allLinks = getElementsByClassName(document, "A", "Link_Class_einfügen");
     
       for(var i=0; i<allLinks.length; i++)
       {
          allLinks[i].onclick = function() {
             ajaxpage(this.title,'div_id');
             return false;
          }
       }
    }
     
    function getElementsByClassName(oElm, strTagName, strClassName){
        var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
        var arrReturnElements = new Array();
        strClassName = strClassName.replace(/\-/g, "\\-");
        var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
        var oElement;
        for(var i=0; i<arrElements.length; i++){
            oElement = arrElements[i];      
            if(oRegExp.test(oElement.className)){
                arrReturnElements.push(oElement);
            }   
        }
        return (arrReturnElements);
    }
    </script>

    ? -> denn dort wo jetzt "div_id" steht müsse eigentlich die ID des Divs hin geschrieben werden.... je nach div der angewählt werden soll...

    danke für deine schnelle antwort!!
     

  4. #4
    elyion_g2 elyion_g2 ist offline Rookie
    Registriert seit
    Nov 2011
    Beiträge
    5
    tut mir leid wenn ich noch nicht so gut im erklären binn...

    -> 'div_id' bedeutet soviel wie: 'hier müsste die ID des DIVs hinein indem der inhalt geladen werden soll'

    -> "Link_Class_einfügen" (zu finden auf linie 76 und 78) bedeutet dass dort die klasse des Links eingetragen werden muss -> wenn ein link in dieser klasse ist, lädt er (dass was er laden sollte , z.B. zweiteseite.html) in dem div der die ID hat, die in linie 83 angegeben ist den inhalt. (und nicht regulär als neue seite)

    wenn ich nun einen neuen link anlege der einer anderen klasse zugeordnet ist, sollte dieser nun in einem anderen div (der wieder wie oben vordefiniert werden muss. und dadurch auch eine andere ID haben muss) den inhalt laden, und nicht im ersten div und nicht als neue seite...

    versteht ihr es jetzt ein wenig besser?

    ich möchte im endeffekt dass man z.b. bei Adobe Dreamweaver einen Text markieren kann - URL drauf setzen - Klasse zuweisen und fertig.

    dadurch das dieser link nun dieser speziellen klasse zugeordnet ist, müsste die URL die er lädt sich im DIV mit der vordefinierten ID laden.
     

  5. #5
    fpvz fpvz ist offline Mitglied Silber
    Registriert seit
    Oct 2011
    Beiträge
    74
    Ja und genau dieses 'div-Id' solltest du mal mit this.title ersetzen. Denn dann fügt er das, was im title-attribut des jeweiligen Links steht ein. Das musst du dann natürlich händisch jedem Link mitgeben (ein Title-Attribut mit der ID des jeweiligen Divs), da gibt es aber auch in DW soweit ich weiß ein Feld für....
    elyion_g2 bedankt sich. 

  6. #6
    elyion_g2 elyion_g2 ist offline Rookie
    Registriert seit
    Nov 2011
    Beiträge
    5
    danke schonmal...
    habs jetzt verstanden was du meinst.

    -> www.hydremag.ch/noiframe

    es funktioniert nur leider noch nicht... (in diesem link kannst du sehen was ich gemacht habe)


    wenn du dort den fehler findest, wärst du der beste!!
     

Ähnliche Themen

  1. MDI Standard
    Von Winner im Forum VisualStudio & MFC
    Antworten: 1
    Letzter Beitrag: 15.01.08, 13:03
  2. Tomcat: Standard-Webanwendung erstellen
    Von janpaet im Forum Hosting & Webserver
    Antworten: 0
    Letzter Beitrag: 16.09.07, 18:33
  3. W3C-Standard
    Von Binio im Forum HTML & XHTML
    Antworten: 1
    Letzter Beitrag: 17.11.06, 06:06
  4. MFC in Standard-DLL nutzen
    Von matz-melon im Forum VisualStudio & MFC
    Antworten: 0
    Letzter Beitrag: 10.01.05, 14:53
  5. Standard Texturpack
    Von PCKing im Forum 3D Studio Max
    Antworten: 1
    Letzter Beitrag: 09.08.02, 18:50