Funktion per Mouseclick stoppen

CaptNick

Mitglied
Habe folgende Funktion

Code:
function scrolldown() {
$("#chatArea").scrollTop(document.getElementById('chatArea').scrollHeight);
}

Welche auch ziemlich das macht was sie soll!

Wie bringe ich jetzt ins spiel das sobald eine Mousetaste gedrückt wird, die funktion nicht ausgeführt wird?
 
Hey CaptNick,

probier doch mal es so
Javascript:
$("chatArea").click(function() {
  $(".button").stop(scrolldown);
});

ich weiß nicht ob das klapp. Aber mit den stop(), end() müsstest du arbeiten. Mach dir einen Button in deine Seite auf dem du klicken kannst.
 
Zuletzt bearbeitet von einem Moderator:
Wenn du verhindern möchtest das die Funktion ausgeführt wird, dann musst du beim Aufruf der Funktion prüfen ob eine der Maustasten gedrückt ist oder nicht.

Wenn man jetzt wüßte was du machen bzw. verhindern willst, könnte man eventuell besser helfen.
 
es geht darum in einer Chatbox (DIV) den automatischen Scrolldown bei neuem INPUT zu verhindern bzw einen Autorefresh ist ne kleine Ajax Shoutbox nix wildes aber einige User haben sich beschwert das man beim Hochscrollen das Problem hat das es ungefragt zurück springt

Code:
function scrolldown() {
$("#chatArea").scrollTop(document.getElementById('chatArea').scrollHeight);
}

	function sendMessage()
{
     $.ajax({
          type: "POST",
          url: "ajax/post.php",
          async: false,
          data: "message="+$("#myMessage").val(),
           success: function(msg){
                refreshChat();
           }
      });
}

function refreshChat()
{		
      $.ajax({
          type: "POST",
          url: "ajax/sb.php",
           success: function(msg){
                $("#chatArea").html(msg);
				scrolldown();
           }
      });
}

refreshChat();
window.setInterval("refreshChat()",5000);

das sind alle Funktionen die damit zusammenhängen auf den PHP kram habe ich jetzt verzichtet, da er mit dem eigentlich Problem nix zu tun hat.
 
Schau mal was passiert wenn du es so versuchst.

Javascript:
// wenn keine Taste gedrückt ist
var mousebutton = false;

$(document).ready(function(){

	$("body")
		.mousedown(function() {
			mousebutton = true;
		})
		.mouseup(function() {
			mousebutton = false;
		});

});

function scrolldown() {
// wenn Maustaste gedrückt ist Funktion gleich wieder verlassen
	if (mousebutton == true) return false;
// ansonsten Code ausführen
	$("#chatArea").scrollTop(document.getElementById('chatArea').scrollHeight);
}
 

Neue Beiträge

Zurück