Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как заставить барадатер открывать картинки-ссылки с js отправкой POST в новой вкладке (https://javascript.ru/forum/dom-window/71479-kak-zastavit-baradater-otkryvat-kartinki-ssylki-s-js-otpravkojj-post-v-novojj-vkladke.html)

laimas 27.11.2017 06:34

Цитата:

Сообщение от Nikifor
Дак, ведь и вы сейчас с эмоциями говорите.

Я спокоен как танк и сейчас, и когда писал. Если вы хотите получить ответ на свои проблемы, создайте нормальную тему с четким изложением проблемы, без глупостей. Уважайте тех, к кому вы обращаетесь.

Не сделаете этого, будете решать свои проблемы с бородами сами, в чем я уверен.

Nikifor 27.11.2017 06:36

Цитата:

Сообщение от laimas (Сообщение 471300)
Я спокоен как танк и сейчас, и когда писал. Если вы хотите получить ответ на свои проблемы, создайте нормальную тему с четким изложением проблемы, без глупостей. Уважайте тех, к кому вы обращаетесь.

Не сделаете этого, будете решать свои проблемы с бородами сами, в чем я уверен.

Если вас ничего не задевает, то зачем вы тогда написали? Спокоен, но напряжён значит.

laimas 27.11.2017 06:57

Цитата:

Сообщение от Nikifor
Если вас ничего не задевает, то зачем вы тогда написали?

Как предложение подумать о том, где вы находитесь. Здесь нужно ставить вопросы, а не заставлять читающего думать "о чем это?". А уж вне форума можете называть браузер хоть унитазом, если вам это нравится.

Не будет этого, значит и ответа вы не получите.

Nikifor 27.11.2017 07:02

ну, это просто вы не почитали тему, даже самое начало, потому что слово то я сразу расшифровал, а хороший ответ на свой вопрос уже нашёл и сам опубликовал его для других.
Тема эта довольно сложная, но теперь каждый кто прочитает мою плохую писульку сможет решить свою проблему. В чём же моё неуважение к людям? я проявил некоторое неуважение только к тому человеку который не написал ничего кроме довольно хамской нападки. Но это, мне кажется понятным, в данной ситуации, вряд ли вы бы были рады, если бы никому ничего плохого не писали, и тему раскрыли достаточно ясно, конкретно, ну с эмоциями просто, а вас назвали бы.. ну, так как он сказал, во всяком случае вы бы решили что это хотя бы логически не является верным утверждением с его стороны )
Потому что придраться особо не к чему кроме шуток и приколов, даже новичок сможет разобраться в том что написано. И правил не нарушил. А бывает, что некоторые профессионалы пишут так что ничего нельзя понять, типа так 2 слова, а остальное сам ищи, хоть убейся, и шпыняют, и требуют к себе уважительного отношения с какого-то перепугу ) издеваются - то что действительно достойно осуждения.
Ещё есть ведь детская пословица. Кто обзывается... смысл её далеко не тривиальный. Он означет, что если кто-то говорит про другого человека что он какашка и (чтобы было окончательно понятно) говорит это всё время (ну, понятно, что не в шутку - негативно), то как минимум внутри он это переживает "какашка, какашка" - чувствует это, т.е. внутри он - какашка ))
А что можно сказать про того человека, про которого он это говорит? Если тот ему в ответ не говорил ничего плохого, или сказал намного мягче, то сразу видно у кого проблемы серьёзнее. Так работает ум. Поэтому если кто-то кого-то оскорбляет, не стоит сразу же на это вестись, лучше сначала разобраться в ситуации. Потому что оскорбляющие как правило сами не правы, это явно. А про адекватность других, сказать сложно )
Ну и если ссора затянулась клубком, то смотрят - кто первый начал, и считают его не правым в первую очередь, а другого не совсем правым, и объясняют ему, что на провокатора можно реагировать лучше, полезнее для всех.
Так воспитатели (по образованию педагоги, психологи) учат детей в детских садах ) Это странно, что в садиках это понимают, а взрослые люди часто не понимают этого и ставят всё с ног на голову ) а это ведь не очень сложно, это явно.

Nikifor 14.12.2017 07:27

Ошибка в моём коде
 
Обнаружил только сейчас:
Фрагмент кода в функциях, для создания и вывода окна, нужно заменить на:
//получение вьюпорта (видимой части окна браузера), и координат щелчка мыши, с учётом прокрутки и без
  var i_html = document.documentElement;
  var i_viewport_w=i_html.clientWidth;  //длина видимой части
  var i_viewport_h=i_html.clientHeight; //высота
  var i_scroll_X=window.pageXOffset;    //расстояние до левого края экрана с учётом прокрутки
  var i_scroll_Y=window.pageYOffset;    //до верхнего
  var i_clX=pp_e.clientX;  //расстояние в пикселях от левого края экрана
  var i_clY=pp_e.clientY;  //верхнего
  var i_pageX=pp_e.pageX;  //..страницы
  var i_pageY=pp_e.pageY;
  var i_showX=i_showY=-1;
  //корректировка положения и размеров блока сообщения в зависимости от того где нажато и влезает ли оно
  if(i_viewport_w<(pp_w+20)) {pp_w=i_viewport_w-20; i_showX=i_scroll_X+10;} //если переданный размер заведомо > (<)
  if(i_viewport_h<(pp_h+20)) {pp_h=i_viewport_h-20; i_showY=i_scroll_Y+10;}
  if(i_showX==-1) {if(i_clX+pp_w<i_viewport_w) i_showX=i_pageX;     //если места хватает, то сообщение выводится с того
                   else {if(i_clX>pp_w) i_showX=i_pageX-pp_w;       //места, где щёлкнуто, иначе до него, но тоже, если 
                         else i_showX=i_scroll_X+i_viewport_w-pp_w;}}      //хватит места, иначе с минимальным смещением влево
  if(i_showY==-1) {if(i_clY+pp_h<i_viewport_h) i_showY=i_pageY;     //и так же по высоте.
                   else {if(i_clY>pp_h) i_showY=i_pageY-pp_h;
                         else i_showY=i_scroll_Y+i_viewport_h-pp_h;}}
  //Создаётся окно сообщения

По верхней и нижней части кода видно с какого по какое место нужно производить замену.
Ошибка была в том, что вывод окна был без учёта прокрутки, и координаты рассчитывались только по видимой части экрана, теперь они считаются с прокруткой и окно выводится правильно.

По поводу тревожного звоночка, про что писал человек с шестерёнкой, я тут ещё подумал и нашёл таки истину. Всё таки это не верно. Придумывание новых слов, как и чего-то нового, если оно лучше того что было, то это не плохо. Сродни изобретению. Держаться же за старое, плохого качества, это как консерватизм без смысла - признак закостенелости, не гибкости ума и мышления. Всё-таки творческое мышление лучше. Поэтому тревожиться тут нечего ) нормальное явление. Слово барадатер конечно коряво звучит. Но дак оно производное от слова браузер, поэтому такое, но всё же получше его, так что... не надо фафа-ляля - биби задавит.


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