Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Скопировать текст с одной страницы и вставить на другую (https://javascript.ru/forum/events/39192-skopirovat-tekst-s-odnojj-stranicy-i-vstavit-na-druguyu.html)

Krovex 19.06.2013 20:54

Скопировать текст с одной страницы и вставить на другую
 
Допустим на странице X, есть число n заключенное в div с id="numberX".
С помощью скрипта, нужно взять это число n со страницы X и вставить на страницу Y в определенное место, например в div с id="numberY".
Знаю скрипт простой, но у меня никак не получается его сделать.
Помогите пожалуйста. :)

danik.js 20.06.2013 01:29

вставляйте это число при генерации страницы.

dmitriymar 20.06.2013 10:23

Цитата:

Сообщение от Krovex
Знаю скрипт простой, но у меня никак не получается его сделать.

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

cyber 20.06.2013 11:07

Цитата:

Сообщение от danik.js (Сообщение 257277)
вставляйте это число при генерации страницы.

или можно записывать в localstorage и отслеживать на другой странице изменения.

Krovex 20.06.2013 12:58

dmitriymar, согласен.
cyber, я вот совсем не пойму как это все связать

skrudjmakdak 20.06.2013 14:12

для начала выложите что вы сделали?
что вы понимайте под другой страницей? фрейм? или переход по ссылке?

Krovex 20.06.2013 16:49

skrudjmakdak, когда я захожу на страницу Y, скрипт гетит нужную информацию с определенного div id="numberX" на странице X и выводит ее в определенном div id="numberY"

<script>
onload = function get_n() {
url: '/X'), if(!document.getElementById){
if(document.all)
document.getElementById=function(){
if(typeof document.all[arguments[0]]!="numberX")
return document.all[arguments[0]]
else
return null
}
else if(document.layers)
document.getElementById=function(){
if(typeof document[arguments[0]]!="numberX")
return document[arguments[0]]
else
return null
}
}
dataType: 'text',
success: function(data) {
var script = data.toString();
var script = script.replace('document.write','$("#numberY").htm l');
}
}
</script>

cyber 20.06.2013 17:02

Krovex,
http://lmgtfy.com/?q=localstorage

Krovex 20.06.2013 17:07

cyber, это слишком сложный способ для меня, так как я не умею пользоваться localstorage

cyber 20.06.2013 17:44

Krovex, ну так что мешает разобраться?
Или вы надеетесь что на форуме вам принесу решение на блюдечке?

Krovex 20.06.2013 17:57

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

cyber 20.06.2013 18:12

Krovex, я не могу понять смысел вашего скрипта, надеюсь кто то другой сможет.

Krovex 20.06.2013 19:17

cyber, ладно, нужно будет позже разобраться в localstorage
Помогите кто нибудь довести до ума мой скрипт...

cyber 20.06.2013 19:25

Krovex, ладно по пробую помочь
onload = function get_n() { 
url: '/X'),//что это за хрень? 
if(!document.getElementById){// проверка на document.getElementById, бред
if(document.all)
document.getElementById=function(){
if(typeof document.all[arguments[0]]!="numberX") //тип "numberX" снова какае то хрень
return document.all[arguments[0]]
else
return null
}
else if(document.layers)// зачем это
document.getElementById=function(){
if(typeof document[arguments[0]]!="numberX")// и снова не понятный тип
return document[arguments[0]]
else
return null
}
}
dataType: 'text', 
success: function(data) { 
var script = data.toString(); 
var script = script.replace('document.write','$("#numberY").htm l'); // еще что то не понятное:)
} 
}

Krovex 20.06.2013 23:16

onload = function get_n() { 
url: '/X'),//ссылка site.com/xblablabla
if(!document.getElementById){// проверка на document.getElementById, бред
if(document.all)
document.getElementById=function(){
if(typeof document.all[arguments[0]]!="numberX") //numberX это id 
return document.all[arguments[0]]
else
return null
}
else if(document.layers)// это я брал из примера, там оно было и все работало
document.getElementById=function(){
if(typeof document[arguments[0]]!="numberX")// id
return document[arguments[0]]
else
return null
}
}
dataType: 'text', 
success: function(data) { 
var script = data.toString(); 
var script = script.replace('document.write','$("#numberY").html'); //numberY это id со страницы на которой я буду находиться. Ну а по смыслу эта строка должна вставить нужный текст в div с этим id
} 
}

cyber 20.06.2013 23:52

Krovex,
какой нафиг id, вы тут проверка на тип
if(typeof document.all[arguments[0]]!="numberX") //numberX это id
url: '/X'),// это маразм какой то а не ссылка

код выше это маразм в ^2, поправьте кто то если я не прав.
P.s это код точно не поможет вам, потому что это бред...

Krovex 21.06.2013 00:07

ой да, что то я не то написал
onload = function get_n() { 
url: '/X'), //  эта ссылка чисто для примера
if(!document.getElementById){ 
if(document.all)
document.getElementById=function(){
   if(typeof document.all[arguments[0]]!="undefined") // вот так
    return document.all[arguments[0]]
    else
    return null
  }
  else if(document.layers)
  document.getElementById=function(){
    if(typeof document[arguments[0]]!="undefined")
return document[arguments[0]]
else
return null
}
}
dataType: 'text', 
success: function(data) { 
var script = data.toString(); 
var script = script.replace('document.write','$("#numberY").html'); 
} 
}

danik.js 21.06.2013 03:57

Krovex, такой код был популярен лет десять назад. Я хз где вы его нашли. Лично я частенько посещаю сайты по JavaScript, но такой вот бред вижу только тут на форуме. На какой помойке вы его находите, а?

Весь скрипт в утиль. Там нет ни одной полезной строчки.
Вот то, что вы пытаетесь сделать:
$(document).ready(function(){
    function injectScript(script) {
            script = script.replace('document.write','$("#numberY").html');
            $(document.body).append($('<script/>').text(script));
    }
    $.get({
        url: '/X',
        dataType: 'text',
        success: injectScript
    });
});

Вместо /X должна быть ссылка на скрипт (нафига? хз)
Это просто рабочий вариант. Что он делает (и зачем) - это уже отдельный вопрос.

cyber 21.06.2013 09:43

Цитата:

Сообщение от danik.js
Krovex, такой код был популярен лет десять назад. Я хз где вы его нашли. Лично я частенько посещаю сайты по JavaScript, но такой вот бред вижу только тут на форуме. На какой помойке вы его находите, а?

аля Попов)

Krovex 21.06.2013 13:35

Цитата:

Сообщение от danik.js (Сообщение 257565)
Вместо /X должна быть ссылка на скрипт (нафига? хз)

это ссылка на страницу с которой гетить нужно
а примеры я брал вот с этого сайта http://www.javascriptsource.com/
спасибо вам, буду теперь разбираться в том что вы написали:)

cyber 21.06.2013 13:48

Krovex, сайты на которых находяться подобные скрипты нужно банить в поисковиках )

Krovex 21.06.2013 13:59

danik.js, так оно гетит всю страницу и при том ничего не вставляет

danik.js 21.06.2013 16:45

Цитата:

Сообщение от Krovex
danik.js, так оно гетит всю страницу и при том ничего не вставляет

Я лишь привел в нормальный вид твой скрипт. А гетить не всю страницу невозможно.

Krovex 21.06.2013 16:54

cyber, да не :) я же не собираюсь воровать контент с какого то другого сайта.
к примеру мне на страницу материала нужно вывести e-mail пользователя с его профиля с помощью этого скрипта

cyber 21.06.2013 18:21

Krovex, делается ajax запрос на сервер, на сервере берем email из бд (или любые другие данные) отправляем клиенту и все , или при генирации страницы заполнять поля.
Цитата:

Сообщение от Krovex
да не я же не собираюсь воровать контент с какого то другого сайта.

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

Krovex 21.06.2013 18:22

cyber, сайт на ucoz, там таким способом не получится, только гетить

cyber 21.06.2013 18:25

Krovex, насчет банить вы меня не так поняли, банить нужно потому что код индуский ..

cyber 21.06.2013 18:26

Цитата:

Сообщение от Krovex
сайт на ucoz, там таким способом не получится, только гетить

ucoz - это убожество ...

Krovex 21.06.2013 18:52

cyber, для благотворительного сайта, самое то

Deff 21.06.2013 20:17

Цитата:

Сообщение от Krovex
к примеру мне на страницу материала нужно вывести e-mail пользователя с его профиля с помощью этого скрипта

Гетите всю страницу, при нормальной скорости инета - что 5кб - что 50кб - однофигственно - ибо сам ответ сервера секунды
А далее выпарсиваете скриптом нужную часть...
Для начинающих есть метод load c подгрузкой нужного селектора
http://jquery-docs.ru/Ajax/load/#urldatacallback

Krovex 21.06.2013 23:23

Deff, офигеть все как просто, спасибо вам большое
$(document).ready(function(){
    $("#numberY").load("/ #numberX");
  });


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