Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: создание новых окон без заголовка

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
Slavenin
Отправлено: 18 Ноября, 2010 - 17:55:15
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




Всем доброго времени суток!

Создаю новое окно через
CODE (javascript):
скопировать код в буфер обмена
  1. window.open("map.html", "map", "width=1, height=1, status=0, menubar=0, location=0, resizable=1, directories=0, toolbar=0, titlebar=0, close=0, scrollbars=1")


но браузеры игнорируют toolbar=0 и вверху окна присутствует панель с заголовком окна и кнопками закрыть свернуть развернуть. Задача проста, открыть новое окно, загрузить в него картинку, но окно должно быть без этой верхней панели. Нашел неплохой урок
http://www[dot]jstoolbox[dot]com/2008/09[dot][dot][dot]3/okna-mootools/ но насколько понял для этого нужно доп библиотеку себе ставить.

Облазил весь интернет, решения проблемы заголовка так и не нашел. Может плохо искал конечно, но везде написано что параметр toolbar=0 как раз и отключает этот заголовок окна.

Большая просьба подсказать как можно решить эту проблему. Желательно простым способом. Улыбка
 
 Top
vitaliy_mad
Отправлено: 18 Ноября, 2010 - 18:17:29
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




насколько я понимаю, этот параметр может коректно работать в одном браузере, и не работать в другом. Если цель в том, чтоб отобразить картинку поверх странички, думаю, стоит посмотреть в сторону <div> с position=absolute
 
 Top
Slavenin
Отправлено: 18 Ноября, 2010 - 18:20:31
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




не только отобразить, но и подогнать размер в зависимости от разрешения экрана и подстраивать размер картинки при изменении размера окна.

хотя я все больше утверждаюсь что придется идти в слои и юзать джаву для изменения параметров окна. В связи с этим вопрос, можно ли как-то динамически рулить положением окна в зависимости от положения курсора?

(Отредактировано автором: 18 Ноября, 2010 - 19:05:12)

 
 Top
vitaliy_mad
Отправлено: 18 Ноября, 2010 - 19:34:23
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




тегу <div> тоже може назначить высоту и ширину
(Добавление)
да, и еще, минус в Вашем варианте то, что во многих случаях всплывающие окна блокируются браузером...
(Добавление)
а это:
Slavenin пишет:
хотя я все больше утверждаюсь что придется идти в слои и юзать джаву для изменения параметров окна. В связи с этим вопрос, можно ли как-то динамически рулить положением окна в зависимости от положения курсора?

усложнение своей жизни...
 
 Top
Slavenin
Отправлено: 18 Ноября, 2010 - 19:50:24
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




vitaliy_mad пишет:
усложнение своей жизни...

согласен, но заказчик хочет чтобы у него картинка открывалась в отдельном окне и при изменении размера окна она тоже менялась под его размер, да и размер окна я пока не совсем понимаю как менять, сделать ее дивом не проблема, вопрос в том как динамически изменять параметры класса css, который отвечает за этот div.
 
 Top
vitaliy_mad
Отправлено: 18 Ноября, 2010 - 19:53:28
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




Есть готовые флешовые решения... где то натыкался...
 
 Top
Slavenin
Отправлено: 18 Ноября, 2010 - 20:43:10
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




к сожалению флеш не катит, на флеше я за 15 минут такое накидаю Улыбка
 
 Top
vitaliy_mad
Отправлено: 18 Ноября, 2010 - 20:45:26
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




тогда могу только посочувствовать... Подмигивание
 
 Top
Slavenin
Отправлено: 18 Ноября, 2010 - 21:31:09
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




лучше немного помочь Улыбка

ника я не пойму, ка мне заставить окошко следовать за курсором
написал вот такую тестовую вещь:

CODE (javascript):
скопировать код в буфер обмена
  1. <style>
  2.   .test
  3.   {
  4.     font-weight:bold;
  5.     background-color:#f00000;
  6.     width:100px;
  7.     height:100px;
  8.     margin-top:100px;
  9.     margin-left:100px;
  10.   }
  11. </style>
  12.  
  13. <script language="JavaScript">
  14.  
  15. var xpos;
  16. var ypos;
  17.  
  18.     function imouse()
  19.     {
  20.       ypos=event.y;
  21.       xpos=event.x;
  22.     }
  23.     function mas_drag()
  24.     {
  25.       document.onmousemove=imouse;
  26.       document.getElementById(1).style.marginTop=ypos;
  27.       document.getElementById(1).style.marginLeft=xpos;
  28.     }
  29.    
  30. </script>
  31.  
  32. <div id = "1" class = "test" onMouseMove="mas_drag()">
  33. 123
  34. </div>


но квадратик бегает за мышкой только если она находится внутри квадратика, что впрочем логично, как сделать чтобы окошко следовало за курсором в любом направлении, а то пока оно бежит только вниз и вправо, а вот вверх и влево отказывается...
 
 Top
JustUserR
Отправлено: 18 Ноября, 2010 - 22:49:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Slavenin В качестве возможной реализации вашей задачи в браузерах позволяющих проводить активное управление компонентами контейнера пользовательских страниц - возможно использование функций мануальных модальных и внешних окон с произвольными параметрами - или применение возможностей HTA-приложений


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Slavenin
Отправлено: 19 Ноября, 2010 - 10:29:55
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




Цитата:
возможно использование функций мануальных модальных и внешних окон с произвольными параметрами

уважаемый, JustUserR, вы не могли бы немного попроще объяснить, а то я отсюда понял только про модальные окна.. а что такое мануальные и внешние? и как собственно настроить им произвольные параметры? просто php для этих целей не приспособлен, на javascript параметр отключающий заголовок игнорируется на уровне безопасности браузера. HTA приложения мне в общем-то понравились, но что будет с пользователями маков, да и эксплорер прежде чем открыть окно спрашивает что сделать с файлом, запстить или сохранить, что тоже не гуд, так как любой пользователь поостережется запускать на своем компьютере программу с неизвестного сайта.

Возможно вы подскажете, как можно это реализовать через слои, а то у меня пока получается не то что хотелось бы. Улыбка

разобрался как заставить квадратик следовать за мышкой, повесил это на onMouseMove , но вот если повесить это на onMouseDown то функция выполняется всего один раз а не постоянно пока нажата кнопка, то есть получается что квадратик прыгает в точку где произошло нажатие кнопки, а как заставить функцию выполняться постоянно?

код имеет следующий вид:

CODE (javascript):
скопировать код в буфер обмена
  1. <style>
  2.   .test
  3.   {
  4.         font-weight:bold;
  5.         background-color:#f00000;
  6.         width:100px;
  7.         height:100px;
  8.         top:100px;
  9.         left:100px;
  10.         position: absolute;
  11.   }
  12. </style>
  13.  
  14. <script language="JavaScript">
  15.  
  16.     var xpos;
  17.     var ypos;
  18.  
  19.     function imouse()
  20.     {
  21.        ypos=event.y+document.body.scrollTop - 20;
  22.        xpos=event.x+document.body.scrollLeft - 20;
  23.     }
  24.    
  25.        
  26.         function mas_drag()
  27.     {
  28.       document.onmousemove=imouse;
  29.       document.getElementById(1).style.top=ypos;
  30.       document.getElementById(1).style.left=xpos;
  31.     }
  32.    
  33. </script>
  34. <html>
  35.         <body>
  36.         <table width = "100%" height = "100%" >
  37.                 <tr>
  38.                         <td>
  39.                                 <div id = "1" class = "test" onMouseDown="mas_drag()">
  40.                                         123
  41.                                 </div>
  42.                         </td>
  43.                 </tr>
  44.         </table>
  45.        
  46.         </body>
  47. </html>


да и еще подскажите можно ли как-то вывести информацию в конкретный тег? или только в поле формы? я вроде где-то видел как это можно сделать, но ника не могу найти...

нашел делается через
CODE (javascript):
скопировать код в буфер обмена
  1. document.getElementById("id").innerHTML=значение;

(Отредактировано автором: 19 Ноября, 2010 - 14:58:38)

 
 Top
Slavenin
Отправлено: 19 Ноября, 2010 - 15:43:54
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




не понимаю почему при первом запросе
CODE (javascript):
скопировать код в буфер обмена
  1. var mas_width=document.getElementById("1").style.width+10;
  2. alert(mas_width);

не определен? Не понял а при втором приобретает значение 10?

с этим тоже разобрался как оказалось надо действовать через специальные методы

CODE (javascript):
скопировать код в буфер обмена
  1. var mas_width = 0;
  2. mas_width=document.getElementById("1").currentStyle.width;
  3. document.getElementById("1").style.width=parseInt(mas_width)+1;

(Отредактировано автором: 19 Ноября, 2010 - 17:07:48)

 
 Top
Slavenin
Отправлено: 19 Ноября, 2010 - 18:32:55
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




подскажите каким событием в javascripte можно заменить событие onPress, т.е. пока нажата кнопка мыши выполняется функция, onMouseDown почему-то не работает, точнее функция срабатывает 1 раз, единственный вариант который я пока вижу это сделать два события onMouseDown и onMouseUp причем первое будет запускать выполнение функции с бесконечной рекурсией, а второе ее прекращать, может есть альтернатива этому способу?

в принципе с поставленной перед собой задачей я справился, окно перетаскивается и масштабируется, осталось только победить события, пока все висит onMouseMove если вдруг кому понадобится, то вот результат моих трудов.

CODE (html):
скопировать код в буфер обмена
  1. <style>
  2.   .test
  3.   {
  4.         font-weight:bold;
  5.         width:120px;
  6.         height:100px;
  7.         top:100px;
  8.         left:100px;
  9.         position: absolute;
  10.   }
  11.   .test2
  12.   {
  13.         background-color:#00FF00;
  14.   }
  15.   .test3
  16.   {
  17.         background-color:#f00000;
  18.   }
  19.  
  20. </style>

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. <script language="JavaScript">
  3.  
  4.     var xpos;
  5.     var ypos;
  6.     var mas_old_posX;
  7.     var mas_old_posY;
  8.  
  9.     function imouse()
  10.     {
  11.        ypos=event.y+document.body.scrollTop;
  12.        xpos=event.x+document.body.scrollLeft;
  13.     }
  14.    
  15.        
  16.         function mas_drag()
  17.     {
  18.       document.onmousemove=imouse;
  19.      
  20.       var mas_width_t=document.getElementById("1").currentStyle.width
  21.      
  22.       document.getElementById(1).style.top=ypos-10;
  23.       document.getElementById(1).style.left=xpos-parseInt(mas_width_t)/2;
  24.     }
  25.        
  26.         function mas_resize(axis)
  27.   {
  28.       document.onmousemove=imouse;
  29.      
  30.       var mas_width = 0;
  31.       var mas_height = 0;    
  32. //растягивание по горизонтали
  33.     if(axis == 1)
  34.     {
  35.       mas_width=document.getElementById("1").currentStyle.width;
  36.      
  37.       if(mas_old_posX>xpos)
  38.       {
  39.         document.getElementById("1").style.width=parseInt(mas_width)-2;
  40.       }
  41.       else
  42.       {
  43.         document.getElementById("1").style.width=parseInt(mas_width)+2;
  44.       }
  45.       mas_old_posX= xpos;
  46.     }
  47.        
  48. //растягивание по вертикали
  49.     if(axis == 2)
  50.     {
  51.       mas_height=document.getElementById("1").currentStyle.height;
  52.      
  53.       if(mas_old_posY>ypos)
  54.       {
  55.         document.getElementById("1").style.height=parseInt(mas_height)-2;
  56.       }
  57.       else
  58.       {
  59.         document.getElementById("1").style.height=parseInt(mas_height)+2;
  60.       }
  61.       mas_old_posY= ypos;      
  62.     }
  63.  
  64. //растягивание в обе стороны    
  65.     if(axis == 3)
  66.     {
  67.        mas_width=document.getElementById("1").currentStyle.width;
  68.        mas_height=document.getElementById("1").currentStyle.height;
  69.      
  70.       if(mas_old_posX>xpos)
  71.       {
  72.         document.getElementById("1").style.width=parseInt(mas_width)-2;
  73.       }
  74.       else
  75.       {
  76.         document.getElementById("1").style.width=parseInt(mas_width)+2;
  77.       }
  78.      
  79.       if(mas_old_posY>ypos)
  80.       {
  81.         document.getElementById("1").style.height=parseInt(mas_height)-2;
  82.       }
  83.       else
  84.       {
  85.         document.getElementById("1").style.height=parseInt(mas_height)+2;
  86.       }
  87.  
  88.       mas_old_posY= ypos;  
  89.       mas_old_posX= xpos;
  90.  
  91.     }
  92.   }
  93.  
  94. </script>

CODE (html):
скопировать код в буфер обмена
  1. <html>
  2. <body>
  3. <table width = "100%" height = "100%" >
  4. <tr>
  5. <td id="pos">
  6. &nbsp
  7. </td>
  8. </tr>
  9. <tr>
  10. <td>
  11. <div id = "1" class = "test" >
  12. <table width="100%" height="100%" border="1" class = "test3">
  13. <tr class="test2" onMouseMove="mas_drag()">
  14. <td colspan="2">
  15. перетаскивание
  16. </td>
  17. </tr>
  18. <tr>
  19. <td>
  20. 123
  21. </td>
  22. <td width="20" onMouseMove="mas_resize(1)">
  23.  1
  24. </td>
  25. </tr>
  26. <tr>
  27. <td height="20" onMouseMove="mas_resize(2)">
  28. 1
  29. </td>
  30. <td onMouseMove="mas_resize(3)">
  31. 2
  32. </td>
  33. </tr>
  34. </table>
  35. </div>
  36. </td>
  37. </tr>
  38. </table>
  39.        
  40. </body>
  41. </html>

(Отредактировано автором: 19 Ноября, 2010 - 18:47:30)

 
 Top
JustUserR
Отправлено: 19 Ноября, 2010 - 19:40:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Slavenin пишет:
Уважаемый, JustUserR, вы не могли бы немного попроще объяснить, а то я отсюда понял только про модальные окна.. а что такое мануальные и внешние? и как собственно настроить им произвольные параметры? просто php для этих целей не приспособлен, на javascript параметр отключающий заголовок игнорируется на уровне безопасности браузера
В случае если первоначальная загрузка выполняемой на клиентской стороне HTML-страница вашего web-сайта обеспечивается в зоне с усредненным уровнем безопасности который не включает в себя блокирование активных компонентов - обеспечение управления модальными окнами может производиться посредством функций http://msdn[dot]microsoft[dot]com/en-us/[dot][dot][dot]6761(VS[dot]85)[dot]aspx и http://msdn[dot]microsoft[dot]com/en-us/[dot][dot][dot]59(v=VS[dot]85)[dot]aspx


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Slavenin
Отправлено: 19 Ноября, 2010 - 21:23:24
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




благодарю, почерпнул много нового, но коли уж практически сделал свое окошко из дива, пускай и очень простое, то хочется довести его до конца, как-никак но его можно полностью настроить в соответствии с нужными параметрами и стилями, в связи с чем просьба, уважаемый JustUserR, не могли бы вы все-таки подсказать способ замены события onPress на доступные методы джава, способ с зацкливанием провалился. Не сомневаюсь что проблема имеет решение, но догадаться до него пока не могу.
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB