Avatar billede brassmaid Nybegynder
05. december 2001 - 02:36 Der er 11 kommentarer og
1 løsning

Hjælp til kode ændring

Dette er koden til en søge funktion. Når man har søgt kommer der en pop-up med resultatet, kan man ændre koden så der ikke kommer nogen pop-up men så den viser resultatet på den samme side

<!-- TWO STEPS TO INSTALL SITE SEARCH:

  1.  Copy the coding into the HEAD of your HTML document
  2.  Add the last code into the BODY of your HTML document  -->

<!-- STEP ONE: Paste this code into the HEAD of your HTML document  -->

<HEAD>

<SCRIPT LANGUAGE=\"JavaScript\">
<!-- Original:  Dion (biab@iinet.net.au) -->
<!-- Web Site:  http://www.iinet.net.au/~biab -->

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
var item = new Array();

/* Here is where all the magic happens. 
    Just enter as many additional pages that
    that you want to search, then fill in the
    additional listings for each page.
*/

// \"Page Name\",\"path\",\"Page Title\",\"Many,Key,Words\",\"Descriptive Comments\"

c=0; item[c]=new Array(\"index.html\",\"\",\"DemoSite\",\"index,main,start,home,front\",\"Demonstration search engine data about an imagined but probable internet site.\");
c++; item[c]=new Array(\"about.htm\",\"\",\"About Me\",\"about,author,contact,email,who\",\"Contact details and general information about the creator of the site and what the site is about.\");
c++; item[c]=new Array(\"links.htm\",\"\",\"Links page\",\"links,more,where,similar,friends\",\"Links to my favourite sites which I find interesting. Other friends sites which have similar interests to my own.\");
c++; item[c]=new Array(\"main.htm\",\"main/\",\"Main Page\",\"content,main,focus\",\"The main part of my site which contains what you have come to see. Lots of stuff like that and more great things. All in a sub directory.\");
c++; item[c]=new Array(\"logo.jpg\",\"main/images/\",\"Link Logo\",\"link,image,logo,graphic\",\"The logo.jpg is just a small image which you can place on your site as a link to me. It\'s in a second level subdirectory.\");

page=\"<html><head><title>Search Results</title></head><body bgcolor=\'white\'><center><table border=0 cellspacing=10 width=80%>\";


function search(frm) {
win = window.open(\"\",\"\",\"scrollbars\");
win.document.write(page);
txt = frm.srchval.value.split(\" \");
fnd = new Array(); total=0;
for (i = 0; i < item.length; i++) {
fnd[i] = 0; order = new Array(0, 4, 2, 3);
for (j = 0; j < order.length; j++)
for (k = 0; k < txt.length; k++)
if (item[i][order[j]].toLowerCase().indexOf(txt[k]) > -1 && txt[k] != \"\")
fnd[i] += (j+1);
}
for (i = 0; i < fnd.length; i++) {
n = 0; w = -1;
for (j = 0;j < fnd.length; j++)
if (fnd[j] > n) { n = fnd[j]; w = j; };
if (w > -1) total += show(w, win, n);
fnd[w] = 0;
}
win.document.write(\"</table><br>Total found: \"+total+\"<br></body></html>\");
win.document.close();
}
function show(which,wind,num) {
link = item[which][1] + item[which][0];
line = \"<tr><td><a href=\'\"+link+\"\'>\"+item[which][2]+\"</a> Score: \"+num+\"<br>\";
line += item[which][4] + \"<br>\"+link+\"</td></tr>\";
wind.document.write(line);
return 1;
}
//  End -->
</script>
</HEAD>

<!-- STEP TWO: Copy this code into the BODY of your HTML document  -->

<BODY>

<center>

<form method=get action=\"java script:void(0)\" onsubmit=\"search(this); return false;\">
<tr><td><input type=text name=srchval value=\"\"><input type=submit value=\"Search\"></td></tr>
</form>

</center>

<p><center>
<font face=\"arial, helvetica\" size=\"-2\">Free JavaScripts provided<br>
by <a href=\"http://javascriptsource.com\">The JavaScript Source</a></font>
</center><p>

<!-- Script Size:  3.16 KB -->
Avatar billede olebole Juniormester
05. december 2001 - 02:38 #1
<ole>
Det kræver, du skruer point antallet betydeligt ned.
/mvh
</bole>
Avatar billede brassmaid Nybegynder
05. december 2001 - 02:41 #2
ned hvorfor det ??
Avatar billede olebole Juniormester
05. december 2001 - 02:43 #3
15 point for et let spørgsmål
30 for et middelsvært
60 for et svært

Der er voldsom inflation i point systemet på Eksperten. Jeg tror alle, der kan give dig svar, vil sige præcist det samme: \"60 points for det spørgsmål er passende\"  ;o)
/mvh
Avatar billede brassmaid Nybegynder
05. december 2001 - 02:44 #4
ok
Avatar billede olebole Juniormester
05. december 2001 - 02:45 #5
Giv mig lige 5 minutter  ;o)
Avatar billede brassmaid Nybegynder
05. december 2001 - 02:46 #6
hmm hvordan sætter jeg dem ned ???
Avatar billede brassmaid Nybegynder
05. december 2001 - 02:50 #7
jeg giver mig selv point
Avatar billede jakoba Nybegynder
05. december 2001 - 02:58 #8
enig. 500 er latterligt højt for det.

// fra og med linien    function search(frm) {
// til og med linien    // END -->
// udskiftes med koden nedenfor:

var uddata;
function output( typ, data ) { // typ:  0=initier, 1=add data, 2=udskriv;
  if ( typ == 0 ) { uddata = new Array(); }
  else
  if ( typ == 1 ) { uddata[uddata.length] = data }
  else
  if ( typ == 2 ) {
    document.write( uddata.join( \"\\n\" );
  }
}; //end output( number, string )

function search(frm) {
//  win = window.open(\"\",\"\",\"scrollbars\");
  output( 0 );
//  win.document.write(page);
  output( 1, page );
  txt = frm.srchval.value.split(\" \");
  fnd = new Array(); total=0;
  for (i = 0; i < item.length; i++) {
    fnd[i] = 0; order = new Array(0, 4, 2, 3);
    for (j = 0; j < order.length; j++)
      for (k = 0; k < txt.length; k++)
        if (item[i][order[j]].toLowerCase().indexOf(txt[k]) > -1 && txt[k] != \"\")
          fnd[i] += (j+1);
  }
  for (i = 0; i < fnd.length; i++) {
    n = 0; w = -1;
    for (j = 0;j < fnd.length; j++)
      if (fnd[j] > n) { n = fnd[j]; w = j; };
    if (w > -1) total += show(w, win, n);
    fnd[w] = 0;
  }
//  win.document.write(\"</table><br>Total found: \"+total+\"<br></body></html>\");
  output( 1, \"</table><br>Total found: \"+total+\"<br></body></html>\" );
//  win.document.close();
  output( 2 );
}
function show(which,wind,num) {
  link = item[which][1] + item[which][0];
  line = \"<tr><td><a href=\'\"+link+\"\'>\"+item[which][2]+\"</a> Score: \"+num+\"<br>\";
  line += item[which][4] + \"<br>\"+link+\"</td></tr>\";
//  wind.document.write(line);
  output( 1, line );
  return 1;
}
// END -->


// så skulle den skrive resultatlisten i samme side.

mvh JakobA
Avatar billede brassmaid Nybegynder
05. december 2001 - 03:25 #9
Hmm der sker ikke noget når jeg indtaster søge ord
Avatar billede olebole Juniormester
05. december 2001 - 03:25 #10
<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<html>
<!-- TWO STEPS TO INSTALL SITE SEARCH:

  1.  Copy the coding into the HEAD of your HTML document
  2.  Add the last code into the BODY of your HTML document  -->

<!-- STEP ONE: Paste this code into the HEAD of your HTML document  -->

<HEAD>

<style type=\"text/css\">
#showDIV {
    width:                500px;
    height:                300px;
    border:                2px inset #ededed;
    font-family:        verdana;
    font-size:            10px;
    overflow:            auto;
}
#showDIV td {
    font-family:        verdana;
    font-size:            12px;
}
</style>

<SCRIPT LANGUAGE=\"JavaScript\">
<!-- Original:  Dion (biab@iinet.net.au) -->
<!-- Web Site:  http://www.iinet.net.au/~biab -->

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
var item = new Array();

/* Here is where all the magic happens. 
    Just enter as many additional pages that
    that you want to search, then fill in the
    additional listings for each page.
*/

// \"Page Name\",\"path\",\"Page Title\",\"Many,Key,Words\",\"Descriptive Comments\"

c=0; item[c]=new Array(\"index.html\",\"\",\"DemoSite\",\"index,main,start,home,front\",\"Demonstration search engine data about an imagined but probable internet site.\");
c++; item[c]=new Array(\"about.htm\",\"\",\"About Me\",\"about,author,contact,email,who\",\"Contact details and general information about the creator of the site and what the site is about.\");
c++; item[c]=new Array(\"links.htm\",\"\",\"Links page\",\"links,more,where,similar,friends\",\"Links to my favourite sites which I find interesting. Other friends sites which have similar interests to my own.\");
c++; item[c]=new Array(\"main.htm\",\"main/\",\"Main Page\",\"content,main,focus\",\"The main part of my site which contains what you have come to see. Lots of stuff like that and more great things. All in a sub directory.\");
c++; item[c]=new Array(\"logo.jpg\",\"main/images/\",\"Link Logo\",\"link,image,logo,graphic\",\"The logo.jpg is just a small image which you can place on your site as a link to me. It\'s in a second level subdirectory.\");

var line=\"<center><table border=0 cellspacing=10 width=80%>\";

var showObj;
function search(frm) {
showObj = (document.getElementById)? document.getElementById(\"showDIV\") : document.all[\"showDIV\"];
txt = frm.srchval.value.split(\" \");
fnd = new Array(); total=0;
for (i = 0; i < item.length; i++) {
fnd[i] = 0; order = new Array(0, 4, 2, 3);
for (j = 0; j < order.length; j++)
for (k = 0; k < txt.length; k++)
if (item[i][order[j]].toLowerCase().indexOf(txt[k]) > -1 && txt[k] != \"\")
fnd[i] += (j+1);
}
for (i = 0; i < fnd.length; i++) {
n = 0; w = -1;
for (j = 0;j < fnd.length; j++)
if (fnd[j] > n) { n = fnd[j]; w = j; };
if (w > -1) total += show(w, n);
fnd[w] = 0;
}
showObj.innerHTML = line+\"</table><br>Total found: \"+total+\"<br>\\n\";
}
function show(which,num) {
link = item[which][1] + item[which][0];
line += \"<tr><td><a href=\'\"+link+\"\'>\"+item[which][2]+\"</a> Score: \"+num+\"<br>\";
line += item[which][4] + \"<br>\"+link+\"</td></tr>\\n\";
return 1;
}
//  End -->
</script>
</HEAD>

<!-- STEP TWO: Copy this code into the BODY of your HTML document  -->

<BODY>

<center>

<form method=get action=\"java script:void(0)\" onsubmit=\"search(this); return false;\">
<tr><td><input type=text name=srchval value=\"\"><input type=submit value=\"Search\"></td></tr>
</form>

</center>

<p><center>
<font face=\"arial, helvetica\" size=\"-2\">Free JavaScripts provided<br>
by <a href=\"http://javascriptsource.com\">The JavaScript Source</a></font>
</center><p>

<p><center>
<div id=\"showDIV\"></div>
</center><p>

</body>
</html>

/mvh
Avatar billede brassmaid Nybegynder
05. december 2001 - 03:27 #11
wee den virker olebole skriv lige noget i min nye post så du kan få point
Avatar billede jakoba Nybegynder
05. december 2001 - 03:28 #12
Ups. den linie hvor funktionen show bliver kaldet:
    if (w > -1) total += show(w, win, n);
skal ændres til
    if (w > -1) total += show(w, 42, n);


Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester