Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите с JavaScript-функцией
 
 автор: cpuuuh   (07.06.2007 в 14:32)   письмо автору
 
 

Вот так у меня cancelBubble работает

<body onclick="alert('body on')">
<button onclick="alert('button on'); window.event.cancelBubble = true">button</button>

А так нет.

<body onclick="alert('body on')">
<button id="but">button</button>
<script type="text/javascript">
function but.onclick(){ // в этой строке редактор синтаксиса пишет что есть ошибка, подскажите как ее устранить
alert("button on")
window.event.cancelBubble = true
}

   
 
 автор: bronenos   (07.06.2007 в 14:41)   письмо автору
 
   для: cpuuuh   (07.06.2007 в 14:32)
 

<button onclick='but_click()'>button</button>
function but_click()
{
  alert ('button on');
  window.event.cancelBubble = true;
}

   
 
 автор: cpuuuh   (07.06.2007 в 15:30)   письмо автору
 
   для: bronenos   (07.06.2007 в 14:41)
 

Спасибо.
Я учу по книге, спросить негде почему but_click вместо but.click это такое правило для составления имен функии?

   
 
 автор: bronenos   (07.06.2007 в 15:48)   письмо автору
 
   для: cpuuuh   (07.06.2007 в 15:30)
 

вы посмотрите, какая функция вызывается при onclick

   
 
 автор: cpuuuh   (09.06.2007 в 15:05)   письмо автору
 
   для: bronenos   (07.06.2007 в 15:48)
 

Я понял о чем вы, но я проверил например так выдаст ошибку

function xxx.ccc.zzz(){
...
}


а если точкив имени функции заменить на подчеркивания то нет.


function xxx_ccc_zzz(){
...
}

   
 
 автор: bronenos   (09.06.2007 в 15:11)   письмо автору
 
   для: cpuuuh   (09.06.2007 в 15:05)
 

точки служат для обращения к методам и свойствам объектов

   
 
 автор: cpuuuh   (09.06.2007 в 15:52)   письмо автору
 
   для: cpuuuh   (09.06.2007 в 15:05)
 

ПОмогите пожулуйста со следующи кодом. Списало из самоучителя и немогу найти ошибку

<quote>
<button onclick="return OpenWin1()">Открыть окно1</button>
<button onclick="return OpenWin2()">Открыть окно2</button>

<script type="text/javascript">
var newWindow

function OpenWin1()
{
window.status = "Window 1"
strfeature = "top=100, left=50, width=300, height=270, toolbar=no"
window.open("http://google.com","win1".strfeature)
}

function OpenWind2()
{
window.status = "Window 2"
strfeature = "dialogWidth=500px;dialogHeight=320px.border=thin;help=no"
window.showModalDialog("Http://www.yandex.ru","win2".strfeature)
}
function Closewin1()
{
if (newWindow)
{
newWindow.close()

newWindow = null
window.status = ""
}
}
</script>
</quote>


IE 6 выдает ошибку при нажатии на кнопку 2 "Открыть окно2" первый символ в сткоке
<button onclick="return OpenWin2()">Открыть окно2</button>

java-editor ошибок не находит
я проверял код он ошибок не нашел.
function Closewin1() не работает

   
 
 автор: bronenos   (09.06.2007 в 16:36)   письмо автору
 
   для: cpuuuh   (09.06.2007 в 15:52)
 

а что оно должно делать и откуда вызываться

   
 
 автор: cpuuuh   (09.06.2007 в 19:52)   письмо автору
 
   для: bronenos   (09.06.2007 в 16:36)
 

по замыслу автора книги
оно должно при нажати на кнопку 1 открыть сайт и через 1-2 сек закрыть его + стерерь URL у кнопки1

кнопка_2 тоже должна открыть сайт в новом окне, при нажатии происходит ошибка(пишет IE) я указал где но там ее вроде нет но кнопка неработает.

Может что-то в js-коде неправильно.


Я все переписал с книги. Сравнил но ошибок не нашел.

   
 
 автор: bronenos   (09.06.2007 в 20:33)   письмо автору
 
   для: cpuuuh   (09.06.2007 в 19:52)
 

ошибка однако ест
"win1" strfuture
они должны как параметры разделяться занятой а не точкой
+ функция открытия окна не совпадает с названием той которая должна вызваться при нажатии кнопки

и на событий кнопки не обязательно ставить return

a функция закрытия нигде не вызывается у вас

   
 
 автор: cpuuuh   (09.06.2007 в 21:55)   письмо автору
 
   для: bronenos   (09.06.2007 в 20:33)
 

Спасибо. Нашел ошибку. Про точки и запятые не знал, скан у книги плохой не видно.

>и на событий кнопки не обязательно ставить return

незнал.


>a функция закрытия нигде не вызывается у вас

function Closewin1()
{
if (newWindow)
{
newWindow.close()
newWindow = null
window.status = ""
}
}

Closewin1() так не работает
newWindow.Closewin1() не работает

как передать значение в newWindow

var newWindow = OpenWin1() ???

   
 
 автор: bronenos   (09.06.2007 в 22:21)   письмо автору
 
   для: cpuuuh   (09.06.2007 в 21:55)
 

newWindow = window.open (...);

   
 
 автор: cpuuuh   (10.06.2007 в 12:15)   письмо автору
 
   для: bronenos   (09.06.2007 в 22:21)
 

я знаю это выражение.

мне нужно привязать (передать значение)

newWindow и нажатие кнопки1

или сделать так

если (был клик по кнопке 1)
закрыть окно которое вызовит этот клик

if (onclick="return OpenWin1()") //не работает

   
 
 автор: bronenos   (10.06.2007 в 13:34)   письмо автору
 
   для: cpuuuh   (10.06.2007 в 12:15)
 

не догоняю

   
 
 автор: cpuuuh   (10.06.2007 в 14:54)   письмо автору
 
   для: bronenos   (10.06.2007 в 13:34)
 

код который я привел работает так

загрузилось окно с двумя кнопками
but1==> win1
but2==> win2

если нажать на but1 то откроется новое окно, но функция closewin1() должна закрыть это окно.

окна открываются но я не могу добиться автоматического закрытия окна 1 вызванного but1

мне кажется что closewin1() написана неправильно, но я немогу ее исправить т.к. мало знаю о js

function Closewin1()
{
if (newWindow) // переменная объяленная в начале кода
{
newWindow.close()
newWindow = null
window.status = ""
}
}

я бы написал if(newWindow = but1 нажата) закрыть win1

как написать newWindow = but1 нажата на js?

   
 
 автор: bronenos   (10.06.2007 в 15:10)   письмо автору
 
   для: cpuuuh   (10.06.2007 в 14:54)
 

может сначала откроете а потом закроете? двумя командами?

   
 
 автор: cpuuuh   (10.06.2007 в 16:07)   письмо автору
 
   для: bronenos   (10.06.2007 в 15:10)
 

Не сочтите упрямцем просто скажите

этот код


<code>
<button onclick="return OpenWin1()">Открыть окно1</button>
<button onclick="return OpenWin2()">Открыть окно2</button>

<script type="text/javascript">
var newWindow

function OpenWin1()
{
window.status = "Window 1"
strfeature = "top=100, left=50, width=300, height=270, toolbar=no"
window.open("http://google.com","win1".strfeature)
}

function OpenWind2()
{
window.status = "Window 2"
strfeature = "dialogWidth=500px;dialogHeight=320px.border=thin;help=no"
window.showModalDialog("Http://www.yandex.ru","win2".strfeature)
}
function Closewin1()
{
if (newWindow)
{
newWindow.close()

newWindow = null
window.status = ""
}
}
</script>
</code>

можно исправить под описанные мной требования.

об этом выражении

var objwin = window.open()
objwin.close()

я знаю

   
 
 автор: bronenos   (10.06.2007 в 16:55)   письмо автору
 
   для: cpuuuh   (10.06.2007 в 16:07)
 

при нажатии какой кнопки его надо зарыть? второй? или по истечении времени?

   
 
 автор: cpuuuh   (11.06.2007 в 01:38)   письмо автору
 
   для: bronenos   (10.06.2007 в 16:55)
 

нажать первую кнопку, и через 1-2 сек открывшееся окно должно закрыться я так понял.
Вторая кнопка просто откроет второе окно.

   
 
 автор: bronenos   (11.06.2007 в 03:31)   письмо автору
 
   для: cpuuuh   (11.06.2007 в 01:38)
 

в функции открытия окна напишите последней строчкой
setTimeout ('closeWin();', 4000);

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования