scorrimento verticale notizie e col passaggio mouse si ferma

provapromi

Nuovo Utente
10 Lug 2008
2
0
0
sto facendo in js, uno script in grado di far visualizzare delle notizie che scorrono in verticale..tutto ok ci sono riuscito ed e' abbastanza compatibile con + browser, ora la cosa ke vorrei fare e' la seguente: se passo all'interno del div mi si blocca lo scorrimento, se esco riprende a scorrere....
nel file ke posto ho provato ad usare onmouseover e onmouseout, dove richiamo due funzioni ke cambiano un booleano e con tale booleano dico di scorrere o lasciar fermo il div...

funge, ma me sfarfalla un bel po, se sto all'interno del div e muovo il mouse all'interno di esso ogni tanto me se move lo scorriemnto, oppure quando esco dal div a volte rimane sempre fermo o accelera de brutto(peggio di rossiche ridere)

attendo grazie.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>prova notizie scorrimento</title>
<meta http-equiv="content-Type" content="text/html; charset=utf-8" />
<style type="text/css">

#main {
position : absolute;
top:0;
right : 0;
width : 811px;
height : 401px;
background-color:#FFF54E;
}

#notizie {
position : absolute;
top:70px;
right :180px;
left: 190px;
overflow:hidden;
height : 311px;
width:426px;
border: 3px double;
}

#notiziemovimento {
position : absolute;
left:0;

}
</style>

<script language="javascript" type="text/javascript">
<!--

var velocita=cache=2;
var ritardoiniziale=500;
function scroller(){
dataobj=document.getElementById("notiziemovimento");
dataobj.style.top="5px";
setTimeout("getaltezza()", ritardoiniziale);
}

function getaltezza(){
altezza=dataobj.offsetHeight;
if (altezza==0)
setTimeout("getaltezza",20);
else
scrollDiv();
}
bloccabool=false;
function scrollDiv(){
if(bloccabool==false){
dataobj.style.top=parseInt(dataobj.style.top)-velocita+"px";
if (parseInt(dataobj.style.top)<altezza*(-1))
dataobj.style.top="5px";
setTimeout("scrollDiv()",40);
}else if(bloccabool==true){
dataobj.style.top=parseInt(dataobj.style.top);
}
}

if (window.addEventListener)
window.addEventListener("load", scroller, false);
else if (window.attachEvent)
window.attachEvent("onload", scroller);
else
window.onload=scroller;

function blocca(){
bloccabool=true;
}
function sblocca(){
bloccabool=false;
scrollDiv();
}
-->
</script>
</head>

<body>

<div id="main">
<div id="notizie" onmouseover="blocca();" onmouseout="sblocca();">
<div id="notiziemovimento">
<p>ciao<br/>ciaociaociaociaociaociao<br/>ciaociaociaociaociao<br/>cciaociaociaoiao<br/>ciaociaociaociao<br/>ciaociaociaociao<br/>cciaociaociaoiao<br/>ciciaociaociaoao<br/>ciaociaociaociaociao<br/>ciaciaociaociaoo<br/>ciaciaociaociaoo<br/>cciaociaociaoo<br/>ciaociaociaociao<br/>ciaciaociaociaoo</p>
</div>
</div>
</div>
</body>
</html>

p.s.: vorrei poter muovere il mouse all'interno del div#notizie cioe' all'interno del bordo doppio...
 
ciao lukeonweb,

il tuo l'ho provato e funziona ovunque, ma non vorrei farlo con i marquee, anchese e' molti piu' facile (e gia' l'hai fatto ;) )...

mi riusciresti a capire il perche il mio script non va bene?!?!
grazie ;)
 
scusate l'intromissione, ma prprio ieri prima di leggere questo 3d ho utilizzato (e modificato) il tut di lukeonweb:angel:

secondo voi può funzionare?

PHP:
<?php
include_once "connessione.php";
//……………….
$notizia="SELECT * FROM notizie WHERE data>$data_mese_prec ORDER BY data";//limit=xxx + paginazione
$query=mysql_query($notizia);

?>
<div><b>NEWS</b></div>
<marquee
	id="MENU"
	direction="up"
	scrollamount="1"
	scrolldelay="15"
	onmouseover="this.stop()"
	onmouseout="this.start()"

<?php

$id_n=array();
$data=array();
$titolo=array();
$conta=0;
//echo "<table>";
while($riga=mysql_fetch_array($query)){
	$id_n[$conta]=$riga['id_n'];
	$data[$conta]=$riga['data'];
	$titolo[$conta]=$riga['titolo'];
	//echo "<td><tr>";
	echo "::<b>".$data[$conta]."</b>::<a href=\"notizia.php?num_not=".$id_n[$conta]."\ target=\"box_notizie\"">".$titolo[$conta]."</a><br>";
	$conta++;
	//echo "</tr></td>";
}
//include_once "paginazione.php";
//echo "<td><tr>".$paginazione."</tr></td>";
//echo "</table>";

?>

</marquee>

:byebye:
 

Discussioni simili