Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2003.02.06;
Скачать: [xml.tar.bz2];

Вниз

Как произвести подмену image в WebBrowser при наведении mouse?   Найти похожие ветки 

 
brestmarket   (2002-12-09 00:48) [0]

Как произвести подмену изображения в WebBrowser при наведении курсора мыши на это изображение? Интересуют только работающие примеры на Java и без него!
Вот мой пример на JavaScript, который имеет один недостаток:
Не работает, если имена файлов встречаются чаще одного раза.


<html>
<head>
<title>My Sample</title>

<script language="JavaScript" type="text/javascript">

if (document.images) {
b1_off = new Image(); b1_off.src = "images/www_install.gif"
b1_over = new Image(); b1_over.src = "images/www_install_over.gif"
b2_off = new Image(); b2_off.src = "images/www_openfolder.gif"
b2_over = new Image(); b2_over.src = "images/www_openfolder_over.gif"
b3_off = new Image(); b3_off.src = "images/www_screenshot.gif"
b3_over = new Image(); b3_over.src = "images/www_screenshot_over.gif"
}

function turn_off(ImageName) {
if (document.images != null) {
document[ImageName].src = eval(ImageName + "_off.src");
}
}

function turn_over(ImageName) {
if (document.images != null) {
document[ImageName].src = eval(ImageName + "_over.src");
}
}
</script>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>

<p><a href="Preview-1.htm" onmouseout="turn_off("b1")" onmouseover="turn_over("b1")" ><img name="b1"
src="images/www_install.gif" alt="" border="0"></a>
<a href="Preview-2.htm" onmouseout="turn_off("b2")" onmouseover="turn_over("b2")" ><img name="b2"
src="images/www_openfolder.gif" alt="" border="0"></a>
<a href="Preview-2.htm" onmouseout="turn_off("b3")" onmouseover="turn_over("b3")" ><img name="b3"
src="images/www_screenshot.gif" alt="" border="0"></a>

</p>
<table width="80%" border="0">
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td><a href="Preview-2.htm" onmouseout="turn_off("b1")" onmouseover="turn_over("b1")" ><img name="b1"
src="images/www_install.gif" alt="" border="0"></a> </td>
<td> </td>
</tr>
</table>
<p> </p>
</body>
</html>


ВОПРОСЫ:
1. Как мне его изменить, чтобы решить проблему.
2. Есть ли возможность решить эту проблему без использования
JavaScript средствами только Delphi6 (это менее желательно).


 
brestmarket   (2002-12-09 10:25) [1]

Господа, прошу помощи!


 
int64   (2002-12-09 13:24) [2]

Дело не в одинаковых именах файлов, а в элементах с одинаковыми именами. У тебя два элемента с именем b1. И далее в функциях ты делаешь:
document.b1.src =...
Отсюда и глюки.

Чтобы вылечить, надо, как вариант, добавить новые переменные:
b4_off =
b4_over =
И имя одного из изображений заменить на b4.


 
brestmarket   (2002-12-09 14:32) [3]

Да, конечно. НО суть в том, что в одном моем документе есть всего-лишь 3 изображения (b1, b2, b3), вызов которых происходит более 70 раз и я не могу себе позволить, да это и неправильно, создание 210 переменных! Как быть?


 
int64   (2002-12-09 16:18) [4]

Тогда вызывай функции с двумя аргументами, например так:
function turn_off(ImageName, param) {
if (document.images != null) {
document[ImageName].src = eval(param + "_off.src");
}
}

ImageName - имя элемента, а param - имя подставляемой переменной.
Соответственно использование такое:
<a href="Preview-2.htm" onmouseout="turn_off("nnnnnnn","b1")" onmouseover="turn_over("nnnnnnn","b1")" ><img name="nnnnnnn"
src="images/www_install.gif" alt="" border="0"></a>


 
brestmarket   (2002-12-09 22:19) [5]

Есть ли вариант реализации этой задачи используя только WebBrowser, т.е. только средствами Delphi. Так, чтобы при наведении курсора мыши картинка подменялась - именно так реализовано в оболочках фирмы AlexSoft - записывающей компакт-диски.


 
brestmarket   (2002-12-10 15:51) [6]

Думаю, что лучший из способов здесь - реализация только на Delphi! Кто-нибудь, подскажите, как этого лучше добиться ТОЛЬКО СРЕДСТВАМИ DELPHI ?


 
int64   (2002-12-10 23:40) [7]

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



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2003.02.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
1-15684
OlDemon
2003-01-27 13:14
2003.02.06
Запись в свой exe файл


1-15654
Lord of Light - Elf
2003-01-27 11:07
2003.02.06
Имя компьютера.


1-15730
Slonic75
2003-01-27 11:23
2003.02.06
Консольное приложение в Delphi


1-15605
eLVik
2003-01-23 09:37
2003.02.06
Alignment


1-15586
tytus
2003-01-28 22:59
2003.02.06
DXILEditor-1





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский