Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проблема с вызовом функции! (https://javascript.ru/forum/misc/13451-problema-s-vyzovom-funkcii.html)

Pacan 29.11.2010 12:18

Проблема с вызовом функции!
 
Здравствуйте.

начну по порядку:

нужно сделать такой див что бы при загрузке страницы его не было видно, но при нажатии на ссылку "1" он появлялся!

Код приведенный ниже работает, но вот функция kill почему-то не срабатывает. но если в место document.getElementById("flashcontent").style.disp lay="none"
прописать alert ("1");(например) то сообщение выводится! Не могу понять в чем дело!

как быть!????буду рад любой помощи!

<script type="text/javascript" src="/swfobject/swfobject.js"></script>

<script type="text/javascript">
var flashvars = {};
var params = {wmode:"transparent", allowScriptAccess:"always", allowFullScreen:"true"};
var attributes = {};
swfobject.embedSWF("/swf/maps/flash.swf", "flashcontent", "693", "865", "9.0.0",
"expressInstall.swf", flashvars, params, attributes);

var open = function() {document.getElementById("flashcontent").style.dis play="block";};
var kill = function() {document.getElementById("flashcontent").style.dis play="none";};
kill ();
</script>

<div id="flashcontent" style="position: relative;">Установите flash-payer</div>

<a href="javascript:open();">1</a>

Kolyaj 29.11.2010 12:44

Когда вы вызываете kill, элемента flashcontent ещё нет на странице.

Pacan 29.11.2010 13:03

делал так:

<script type="text/javascript" src="/swfobject/swfobject.js"></script>

<script type="text/javascript">
var flashvars = {};
var params = {wmode:"transparent", allowScriptAccess:"always", allowFullScreen:"true"};
var attributes = {};
swfobject.embedSWF("/swf/maps/balt.swf", "flashcontent", "693", "865", "9.0.0",
"expressInstall.swf", flashvars, params, attributes);
var open = function() {document.getElementById("flashcontent").style.dis play="block";};
var kill = function() {document.getElementById("flashcontent").style.dis play="none";};
</script>

<div id="flashcontent" style="position: relative;">Установите flash-payer</div>

<a href="javascript:open();">1</a>

<script type="text/javascript">
kill ();
</script>

не помогло! все равно вылазит!((((

может div надо убивать как-то по другому!?

tom 29.11.2010 13:17

Помогите и мне
 
:blink:
Извинения ТС,за то, что влез в тему, просто не хотел плодить лишних .


вот сайт http://radugaspa.ru
По всей видимости у меня тоже проблема с вызываом функции. Мне нужно прикрутить плавнораскрывающееся меню в движок phpshop.

Само меню, взял тут http://www.ruseller.com/lessons.php?rub=33&id=240 , подключил его в файле шаблона. Это файл шаблона выводится на главную ввиде пременной @leftCatal@.

Но дело в том, что скрипт срабатывает только для первого пункта меню, а второй и все отстальные выводятся уже раскрытыми.


помагите пожалуйста .

ksa 29.11.2010 13:17

Цитата:

Сообщение от Pacan
нужно сделать такой див что бы при загрузке страницы его не было видно, но при нажатии на ссылку "1" он появлялся!

А когда он должен исчезать?

Pacan 29.11.2010 13:21

с исчезновением проблем нет! div убирается при нажатии на кнопку во flash!

monolithed 29.11.2010 13:22

Хозяйке на заметку:

<script type="text/javascript">
window.onload = function(){
     document.getElementsByTagName('a')[0].onclick = function(){
          var div = document.getElementsByTagName('div')[0];
          div.style.display = (div.style.display == '') ? 'block' : '';
      };
 };
</script>

<style type="text/css">
div {background: red; display: none; width: 50px; height: 50px;}
</style>

<a href="#">click</a>
<div></div>

Pacan 29.11.2010 13:38

проблема была в динамическом размещение swf!

если размещать статически все норм! но требует активации в опере (надо кликнуть по флешке!)

есть идеи как побороть!??

рони 29.11.2010 14:37

Цитата:

Сообщение от Pacan
есть идеи как побороть!??

Есть идея читать документацию ))) в качестве атрибута можно задать класс например
<style type="text/css">
          .hide{
          display: none;
        }
            </style>

добавление класса
var attributes = {};
            attributes.styleclass = "hide";

и в kill (); не будет необходимости

Pacan 29.11.2010 16:01

нашел решение!))

нужно div с flash обвирнуть в другой див и функции уже к нему прописывать! Все работает!


Часовой пояс GMT +3, время: 16:08.