Hallo,
[...] müsste ich [...] das Objekt finden, in dem das iframe steckt. Dann mache ich mit dem gefundenen Objekt etwas anderes.
Ok, es geht doch, ohne Parameterübergabe und auch ohne Array, in dem man suchen müsste. Aber vermutlich ist dir auch das wieder zu umständlich ;-):
Parent-Dokument:
--------------------------------------------------------------------------
<html><head><title>Test</title>
<script type="text/javascript">[code lang=javascript]
function Test () { alert( document.getElementsByName(arguments.callee.caller["frameName"])[0].parentNode ); }
</script>
</head>
<body>
<!-- 4 iframes in versch. Containern: -->
<iframe src="iframe.htm" name="myIframe0"></iframe>
<p><iframe src="iframe.htm" name="myIframe1"></iframe></p>
<i><iframe src="iframe.htm" name="myIframe2"></iframe></i>
<div><iframe src="iframe.htm" name="myIframe3"></iframe></div>
</body>
</html>[/code]
--------------------------------------------------------------------------
iframe-Dokument "iframe.htm":
--------------------------------------------------------------------------
<html>
<head><title>iframe</title>
<script type="text/javascript">[code lang=javascript]
Function.prototype.frameName = self.name;
var Aufruf = function () { parent.Test(); }
</script>
</head>
<body>
<p>Ich bin ein iframe.</p>
<a href="javascript:Aufruf();">Was ist mein Container?</a>
</body>
</html>[/code]
--------------------------------------------------------------------------
Die Erweiterung durch Function.prototype kommt nur in den iframes zum Tragen. iframes haben ihren einen eigenen Scope.
Bitte.
Don P