| 
 Как получит ссылку на элемент внутри которого запустили JS код? Здравствуйте! Не знаете? Как получить элемент внутри которого был запущен JS код? Например: <div> <script type="text/javascript"> как отсюда получить ссылку на внешний div, внутри которого мы собственно запустили этот код? </script> </div> | 
| 
 вообще, по-моему, никак. окно, в котором он запущен, он еще знает а вот див.. хм. Опиши задачу, из-за который ты такой лапшекод городишь? вполне вероятно, что можно обойтись и без таких приемов. | 
| 
 Подозреваю ОП хочет реализовать такой механизм: - есть некий блок html, следом за ним идет код js - требуется применить в этом js некоторые действия непосредственно к предшествующему блоку - таких связок может быть несколько на странице и действия внутри каждой из этих связов могут отличаться в зависимости от сгенерированного js. Если закача такая, то как решение могу предложить поиск по имеющемуся DOM в обратном направлении, первый найденный блок html будет тот, что предшествует исполняемому в данный момент js-коду. | 
| 
 если Js-код генерится, то что мешает генерить туда же айдишник предшествующего элемента? опять же, задачу в студию) | 
| 
 Хочу вызвав JS функцию создать свой элемент, расположенный в том же самом месте что и JS код, подобно writeln, только через DOM создавать буду. | 
| 
 Хочу без id обойтись | 
| 
 конечно, не знаю канает ли такое ну вроди бы должно канать: document.div[0] где 0-это начальный масив элемента див... в отм случи если у тебя 1 див если код размещен во втором то будет 1 вместо 0 | 
| 
 В каждом блоке <script> делать переменную с порядковым номером. И при вызове определенного участка кода будет соответственно и переменная-айдишник будет инициализироватся, и в зависимости от значения этой переменной применять какие-то действия к блокам... Вот как-то так :) | 
| 
 напишите примеры, показывающие на коде то, о чём вы говорите. я думаю, что можно так скрипт. это находится сверху, потому что эта коллекция - живая. (если на страницу добавим скрипт - он сам тут появится) 
// все скрипты на странице
        var scripts = document.getElementsByTagName("script");
а это - внутри каждого DIV 
// наш div.
        var div; 
  
        // очевидно, что именно ЭТОТ скрипт будет последним.
        var script = scripts[ scripts.length-1 ];
        
        //относительно ЭТОГО скрипта ищем близлежащий div,
        // который будет РОДИТЕЛЕМ для этого скрипта
        div=script;
        //поднимаемся до DIV
        while( div.tagName!=="DIV" ) 
            div=div.parentNode;
        
        //div нашли. теперь деаем с ним, чо хотим
        div.onclick=function(){
            this.parentNode.removeChild(this);
        }
ну и пример, конечно же. 
<h1>При клике на DIV они будут скрываться</h1>
<script>
    var scripts = document.getElementsByTagName("script");
</script>
<div>
    Это дивчег первый.
    <script>
        // наш div.
        var div; 
        
        // очевидно, что он будет последним.
        var script = scripts[ scripts.length-1 ];
        
        //относительно ЭТОГО скрипта ищем близлежащий div,
        // который будет РОДИТЕЛЕМ для этого скрипта
        div=script;
        //поднимаемся до DIV
        while( div.tagName!=="DIV" ) 
            div=div.parentNode;
        
        //div нашли. теперь деаем с ним, чо хотим
        div.onclick=function(){
            this.parentNode.removeChild(this);
        }
    </script>
</div>
<div>
    Это дивчег второй.
    <script>
        // наш div.
        var div; 
        
        // очевидно, что он будет последним.
        var script = scripts[ scripts.length-1 ];
        
        //относительно ЭТОГО скрипта ищем близлежащий div,
        // который будет РОДИТЕЛЕМ для этого скрипта
        div=script;
        //поднимаемся до DIV
        while( div.tagName!=="DIV" ) 
            div=div.parentNode;
        
        //div нашли. теперь деаем с ним, чо хотим
        div.onclick=function(){
            this.parentNode.removeChild(this);
        }
    </script>
</div>
 | 
| 
 Самое правильное тут document.write, он для этого и придуман. | 
| 
 Цитата: 
 Цитата: 
 | 
| 
 Другими словами, мне просто нужен тот элемент в который writeln и будет делать запись. | 
| 
 в моём коде все перед строчкой  
div.onclick=function(){
....
 | 
| 
 Вот наконец то, сразу как то не догадался: 
<script type="text/javascript">
	var getWriEle=function(){
		var scr = document.getElementsByTagName("script");
		var ele = scr[scr.length-1].parentNode;
		return ele;
	};
</script>
Всем спасибо! | 
| 
 Цитата: 
 | 
| 
 Цитата: 
 Она же в обоих случаях указывает на последний тэг script. В таком случае почему это работает при клике на первом диве? Почему удаляется не последний элемент при клике на первом? | 
| 
 Цитата: 
 доступнее обьяснит кто-то другой (Kolyaj, например:)). я не достиг этой стадии понимания | 
| 
 Цитата: 
 Думал, может этот способ поможет решить мою проблему, но в таком случае не поможет :( Не знаете, можно ли как-то обратиться из iframe к div, который обрамляет этот ифрэйм, без использования id и name? Дело в том, что этот div создается периодически чатным движком и необходимо после отработки скрипта в загруженном iframe передавать результат в родительское окно. <div><iframe src="./page.html" name="iframek" frameborder=0 width=5 height=5></iframe></div> в фрейме скрипт наподобие этого var iframes = window.parent.document.getElementsByName('iframek' ); iframes[iframes.length-1].parentNode.innerHTML='результат обработки скрипта во фрейме'; Вариант, в принципе работает, но хотелось бы узнать, нет ли более прямого пути к div'у. Прошу прощения, что спрашиваю здесь же, но я не нашел, как добавить вопрос отдельной веткой. | 
| 
 Цитата: 
 
function findIframeContainer() {
    var iframes = parent.document.getElementsByTagName('iframe');
    for (var i = 0; i < iframes.length; i++) {
        if (iframes[i].contentWindow == window) {
            return iframes[i].parentNode;
        }
    }
    return null;
}
Как-то так. | 
| 
 Цитата: 
 | 
| 
 Цитата: 
 | 
| Часовой пояс GMT +3, время: 09:04. |