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

HTML+CSS+JavaScript

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

 

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

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

тема: Передача информации JS с дополнит. окна в основное.
 
 автор: toproot   (26.12.2009 в 18:07)   письмо автору
 
 

Хочу сделать у себя на CMS поддержку изображений.
Может у кого есть лутше вариант предложите обязательно !
- есть главная страница, редактируем текст. Нажымаем сверху добавить изображение.
- window.open('add.php?service=images','ImaGe','width=400,height=400,toolbar=0');
- Открывается окно, в нем изображения уменьшенные. Все изображения находятся в базе данных.

Нужно чтоб: при нажатии на изображение, информация передавалась с открытого 400х400 окна в основное в форму <textarea> типа [dbimg id="id_img" w="100" h="100"] .

  Ответить  
 
 автор: ~AquaZ~   (26.12.2009 в 18:26)   письмо автору
 
   для: toproot   (26.12.2009 в 18:07)
 

1) window.open - не выход, юзайте модальные окна http://jqueryui.com/demos/dialog/
2) Изображения лучше в БД не заносить - нагрузка сильная будет.

  Ответить  
 
 автор: sim5   (26.12.2009 в 18:33)   письмо автору
 
   для: ~AquaZ~   (26.12.2009 в 18:26)
 

1. Почему это не подойдет window.open? Модальный диалог будет работать только в IE.

  Ответить  
 
 автор: toproot   (28.12.2009 в 17:53)   письмо автору
 
   для: ~AquaZ~   (26.12.2009 в 18:26)
 

Не получается у меня пока с модальными окнами сделать нормально.
окно затемняется (кроме IE 8) , но мне в этом окошке нужно разместить по 9 изображений с постраничной навигацией.
Причем при перелестывании все должно оставатся темным до щелчка по изображению. Ajax грузит, но постраничка не работает.

Поэтому я всетаки предпочту наверное winow.open .
Только обьясните как информацию передать.

  Ответить  
 
 автор: Lelik   (28.12.2009 в 17:59)   письмо автору
 
   для: toproot   (28.12.2009 в 17:53)
 

тебе надо аяксом на сервер передать, или из открытого окошка в родительское?
для второго случая есть свойство opener:

opener.document.getElementById('layout');

и таким образом передавать в родительское окно, с первым случаем немножко всё по другому

  Ответить  
 
 автор: toproot   (28.12.2009 в 18:13)   письмо автору
 
   для: Lelik   (28.12.2009 в 17:59)
 

из открытого в родительское.
JavaScript:opener.document.getElementById('layout'); return false;
<div id="layout"> <div>
не совсем ясно, как opener использовать ?
есть ссылка, при нажатии должно открытся новое окно
в окне нажимаем на картинку, это при щелчке на картинку onclick=opener.document.getElementById('layout'); ?
так куда оно передаст и что.
Обясните плиз как этот метод использовать.

- Да еще, как после выбора закрыть окошко.

  Ответить  
 
 автор: Lelik   (28.12.2009 в 18:18)   письмо автору
 
   для: toproot   (28.12.2009 в 18:13)
 

сделай простое окно из которого будешь открывать новое, в новом сделай такой код:

<script>
function test() {
    opener.document.getElementById('test_div').innerHTML = 'test content of this block';
}
<span onclick="test()">click me</span>
</script>


в родительском окне не забудь блок:

<div id="test_div"></div>


Да еще, как после выбора закрыть окошко.
window.close();

  Ответить  
 
 автор: toproot   (28.12.2009 в 18:49)   письмо автору
 
   для: Lelik   (28.12.2009 в 18:18)
 

function test(form) { 
    opener.document.getElementById('test_div').innerHTML = '[dbimg id="'+form.value+'" w="100" h="100"]'; 

</script>


JavaScript:test('125'); передает [dbimg id="undefined" ... Значение вроде передано

  Ответить  
 
 автор: Lelik   (28.12.2009 в 18:52)   письмо автору
 
   для: toproot   (28.12.2009 в 18:49)
 

что такое form?

  Ответить  
 
 автор: toproot   (28.12.2009 в 19:04)   письмо автору
 
   для: Lelik   (28.12.2009 в 18:52)
 

у меня это значение просто, что имя поменять ?

  Ответить  
 
 автор: Lelik   (28.12.2009 в 19:05)   письмо автору
 
   для: toproot   (28.12.2009 в 19:04)
 


function test(form) { 
    opener.document.getElementById('test_div').innerHTML = '[dbimg id="'+form+'" w="100" h="100"]'; 

  Ответить  
 
 автор: toproot   (28.12.2009 в 19:12)   письмо автору
 
   для: Lelik   (28.12.2009 в 19:05)
 

отлично есть, а как передать в <textarea name="content" style=...
пишу вместо test_div - content. Не принимает, как в форму передать ?

  Ответить  
 
 автор: Lelik   (28.12.2009 в 20:03)   письмо автору
 
   для: toproot   (28.12.2009 в 19:12)
 

для элементов формы вместо innerHTML используй value

  Ответить  
 
 автор: toproot   (28.12.2009 в 20:31)   письмо автору
 
   для: Lelik   (28.12.2009 в 20:03)
 

Есть, а еще один ньюанс,
как мне переданую информацию + старую информацию, желательно чтоб строчка [dbimg id.. появилась в месте расположения курсора.

  Ответить  
 
 автор: Lelik   (28.12.2009 в 20:43)   письмо автору
 
   для: toproot   (28.12.2009 в 20:31)
 

как мне переданую информацию + старую информацию

var sVal = opener.document.getElementById('text').value;
opener.document.getElementById('text').value = sVal +'[dbimg id="'+form+'" w="100" h="100"]';


желательно чтоб строчка [dbimg id.. появилась в месте расположения курсора.
это в интернетах скрипт поищи, кстати на форуме тут что-то такое проскакивало

  Ответить  
 
 автор: toproot   (28.12.2009 в 20:52)   письмо автору
 
   для: Lelik   (28.12.2009 в 20:43)
 

Огромнейшее СпасиБо !

  Ответить  
Rambler's Top100
вверх

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