volt: im iframe abhängig von der mausposition scrollen

Hallo Welt,

ich möchte folgendes: Ich habe ein Iframe und möchte, dass es scrollt, wenn sich die maus in einem teil des iframes befindet. Nach links und rechts also... nun habe ich mal folgendes script gebastelt, was im Iframe aufgerufen wird (nicht im Parent):

var scrollpixel=0; //der wert, um den gescrollt wird
var oldx=0;
var counter=00;
var frameX=window.innerWidth;
var imagesize=81; //pixel breit
var calc=imagesize*20; //81 pixel ist das Thumbnail breit und 20 sinds... = dokument-breite
var x=0;

function scrollIFrame() {
  if (window.Event) {
    document.captureEvents(Event.MOUSEMOVE);
  }
  document.onmousemove = getX;
  if(x=="") {
   x=oldx;
  }
  doIt(x);
}

function getX(e) {
  x = (window.Event) ? e.pageX : event.clientX;
}

function doIt(x) {

if (x<oldx) {
  scrollpixel=-2;
 }

if (x>oldx) {
  scrollpixel=2;
 }

window.scrollBy(scrollpixel, 0);
 window.onScroll=update();
 oldx=x;

output();

}

function output() { //gibt die werte an die inputs im parent
  parent.document.form.coords.value = x;
  parent.document.form.scrollpixel.value = scrollpixel;
  parent.document.form.calc.value = calc;
  parent.document.form.frameX.value = frameX;
  parent.document.form.counter.value = counter;

}

function update() {
 if(counter==00) {
  counter=x;
 }

if((counter>=x) && (counter<calc)){
  counter=counter+scrollpixel;
 }

if(counter<x) {
  counter=x;
 }
 if(counter>=calc) {
  counter=calc-1;
 }
}

var scrollruntime = window.setInterval("scrollIFrame()", 1);

Dieses script bekommt z.Z. aber nur die mausveränderung mit. Also bewege ich die maus nach links, wird nach links gescrollt etc... Nur funktioniert das in jedem Bereich des Iframes und das hört auch nicht auf mit scrollen... Ich möchte die Mausposition REALITIV zur Iframe-Größe und nicht realtiv zum Dokument, was da gescrollt wird...Somit überschreitet irgendwann der Wert der Mausposition den Wert der Iframe-Größe. Was schlecht ist, da ich nun nicht mehr herausfinden kann, ob die maus sich im linken oder rechten Teil des Iframes sich befindet...

Da ich ich Thumbnails scrollen möchte, weiß ich ihre Größe und errechne also auch die veränderung beim scrollen ( window.onScroll=update(); )

Ich habs soweit geschafft, dass ich den X-Wert der Maus habe (allerdings vom gesamten IFrame-Dokument), die Gesamte Breite des Iframe-Dokuments und den aktuellen Scrollwert. Daraus lässt sich doch was machen. Oder?

Himmel hilf! (auch wenn ich es etwas verworren ausgedrückt habe) :)

Grüße

volt

  1. Hallo,

    ich möchte folgendes: Ich habe ein Iframe und möchte, dass es scrollt, wenn sich die maus in einem teil des iframes befindet.

    Das wissen wir doch schon. Warum bleibst du nicht bei deinem ursprünglichen Thread?

    So long,

    Martin