Olá galera, eu tenho um javascript aqui que faz uma busca na propria página, alguém consegue modificar esse código para que ele busque as informações em um banco de dados em JS? pois eu tenho umas 3500 linhas "the_entries" , dai fica muito pesado. Quando faço uma busca apareçe a menssagem "Um scrpt da página esta provocando a execução lenta do internet explorer". Se poderem me explicar com uma linguagem de leigo eu agradeço, pois não entendo quase nada de Javascript. Agradeço.....
<html>
<head>
<title>Consulta interna</title>
</head>
<body>
<div align="center" style="width: 358; height: 97">
<table width="383" height="56">
<tr>
<td height="60" width="375">
<form method="GET">
<p align="left">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Consulta interna:</b>
</font><font face="Verdana, Arial, Helvetica, sans-serif"><br>
<font size="2">
<input type="text" name="query" size="16" style="font-size: 9 pt; color: #000000; font-family: Verdana; font-variant: small-; border: 1 solid #000000">
</font></font> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<input type="submit" value="Buscar" style="font-size: 8 pt; color: #000000; font-family: Verdana; font-variant: small-caps; border: 1 solid #000000">
</font>
</form>
<font color="#666666"> </font> </td>
</tr>
</table>
<table width="383">
<tr>
<td height="0" bgcolor="#C0C0C0" width="375"></td>
</tr>
</table>
</div>
<div align="center" style="width: 383; height: 39">
<table width="377">
<tr>
<td width="369"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<script language="">
function kw_list ()
{
this.keywords = new Array ();
this.num_words = 0;
this.query = "";
this.original_query = "";
this.query_length = 0;
this.possible_points = 0;
this.multiple = points_title + points_keywords + points_description;
this.get_words = get_query;
this.no_query = no_query_found;
}
function get_query ()
{
this.query = top.location.search.substring (top.location.search.indexOf ('=') + 1);
while ((the_plus = (this.query.indexOf ("+", 0))) != -1)
{
this.query_length = this.query.length;
this.query = this.query.substring (0, the_plus) + " " + this.query.substring (the_plus + 1);
}
this.original_query = unescape (this.query);
this.query = this.original_query.toLowerCase ();
this.query_length = this.query.length;
if (this.query != "")
{
var query_pointer = 0;
var end_word = 0;
var at_end = 0;
while ((this.num_words <= (max_keywords - 1)) && (! at_end))
{
end_word = this.query.indexOf (" ", query_pointer);
if (end_word == query_pointer)
query_pointer++;
else
{
if (end_word >= (this.query_length - 1))
at_end = 1;
if (end_word != -1)
this.keywords[this.num_words] = (this.query.substring (query_pointer, end_word)).toLowerCase ();
else
{
this.keywords[this.num_words] = this.query.substring (query_pointer, this.query_length);
at_end = 1;
}
this.num_words++;
if (query_pointer != -1)
query_pointer = end_word + 1;
if (query_pointer > (this.query_length - 1))
at_end = 1;
}
}
if (this.num_words == 0)
return (0);
else
{
this.possible_points = this.multiple * this.num_words;
return (1);
}
}
else
return (0);
}
function no_query_found ()
{
document.writeln ('<link rel="stylesheet" href="gp.css">');
document.writeln ('<CENTER><P>Pesquisa em branco.</P></CENTER>');
}
function entry (url, title, keywords, description)
{
this.url = url;
this.title = title;
this.keywords = keywords;
this.description = description;
this.points = 0;
this.search_entry = find_keyword;
this.print_entry = print_result;
}
function find_keyword (the_word)
{
var the_title = this.title.toLowerCase ();
var the_keywords = this.keywords.toLowerCase ();
var the_description = this.description.toLowerCase ();
if ((the_title.indexOf (the_word)) != -1)
this.points += points_title;
if ((the_keywords.indexOf (the_word)) != -1)
this.points += points_keywords;
if ((the_description.indexOf (the_word)) != -1)
this.points += points_description;
}
function print_result (possible_points)
{
document.writeln ('<A HREF="' + this.url + '" target="meio">' + this.title + '</A> - ' + this.description + '<br>');
}
function no_entry_printed (the_query)
{
document.writeln ('<link rel="stylesheet" href="gp.css">');
document.writeln ("<CENTER><P> Não há ocorrencia da palavra <U><B>" + the_query + "</B></U>.</P></CENTER>");
}
function print_intro (the_query)
{
document.writeln ("<CENTER><P>Os resultados da pesquisa por <U><B>" + the_query + "</B></U> são:</P></CENTER>");
}
function begin_search ()
{
var key_list = new kw_list;
var entry_printed = 0;
if (! key_list.get_words ())
key_list.no_query ();
else
{
var counter = 0;
var counter2 = 0;
for (counter = 0; counter < entry_num; counter++)
for (counter2 = 0; counter2 <= (key_list.num_words - 1); counter2++)
the_entries[counter].search_entry (key_list.keywords[counter2]);
for (counter = key_list.possible_points; counter > 0; counter--)
{
for (counter2 = 0; counter2 < entry_num; counter2++)
{
if (counter == the_entries[counter2].points)
{
if (entry_printed != 1)
{
entry_printed = 1;
print_intro (key_list.original_query);
}
the_entries[counter2].print_entry (key_list.possible_points);
}
}
}
if (! entry_printed)
no_entry_printed (key_list.original_query);
}
}
the_entries = new Array ();
//aqui vai as entradas para a pesquisa
the_entries[0] = new entry ("http://www.seu endereco.com.br/link.htm", "WebMaster Leandro Eber Ribeio", "leandro, autor, webmaster, dono, desenvolvedor, contatos, icq, contato, parcerias ", "Saiba um pouco sobre o WebMaster deste site, ICQ, E-mail, Contatos, Cargos, História da HP e muito mais.<br>");
the_entries[1] = new entry ("http://www.seu endereco.com.br/links.htm","Código do site Animanix","desenhos, ikki, IkkiNet, IkkiNET, SSJ_Clan, SSJ, afiliados, aliados, amigos, afilia-se","Conheça todos nossos amigos afiliados com a HP.<br>");
//abaixo vai o número de entradas existentes
var entry_num = 2; //aumenta de acordo com as obcoes de busca no caso 2 ate agora
var max_keywords = 20; //aumenta de acordo com as obcoes de busca no caso 2 ate agora
var points_title = 2; //aumenta de acordo com as obcoes de busca no caso 2 ate agora
var points_keywords = 2; //aumenta de acordo com as obcoes de busca no caso 2 ate agora
var points_description = 1;
begin_search ();
</script>
</body>
Pergunta
Guest Edye Tsukamoto
Olá galera, eu tenho um javascript aqui que faz uma busca na propria página, alguém consegue modificar esse código para que ele busque as informações em um banco de dados em JS? pois eu tenho umas 3500 linhas "the_entries" , dai fica muito pesado. Quando faço uma busca apareçe a menssagem "Um scrpt da página esta provocando a execução lenta do internet explorer". Se poderem me explicar com uma linguagem de leigo eu agradeço, pois não entendo quase nada de Javascript. Agradeço.....
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.