JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

happyslacker

New Member
[size=+2]Функцията[/size]

HTML:
document.include = function (url) {
 if ('undefined' == typeof(url)) return false;

// for Mozilla
if (window.XMLHttpRequest) {
re = new XMLHttpRequest();
}
// for IE
else if (window.ActiveXObject) {
re = new ActiveXObject("Microsoft.XMLHTTP");
}

if (re!= null) {
re.open("GET",url,false);
re.send(null);
document.write(re.responseText);
}

}

[size=+2]Примерно използване[/size]

Код:
document.include("test.inc");

[size=+2]Известни проблеми[/size]

- Не работи когато трябва да заредим нещо от друг сървър:

Код:
document.include("http://www.google.com/");

Има ли алтернативно решение, което да позволява зареждане на данни от друг сървър?
 
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

[SIZE=+2]Функцията[/SIZE]

HTML:
document.include = function (url) {
 if ('undefined' == typeof(url)) return false;

// for Mozilla
if (window.XMLHttpRequest) {
re = new XMLHttpRequest();
}
// for IE
else if (window.ActiveXObject) {
re = new ActiveXObject("Microsoft.XMLHTTP");
}

if (re!= null) {
re.open("GET",url,false);
re.send(null);
document.write(re.responseText);
}

}
[SIZE=+2]Примерно използване[/SIZE]

Код:
document.include("test.inc");
[SIZE=+2]Известни проблеми[/SIZE]

- Не работи когато трябва да заредим нещо от друг сървър:

Код:
document.include("http://www.google.com/");
Има ли алтернативно решение, което да позволява зареждане на данни от друг сървър?
най-големия проблем не е ли че гугъл не го чете това?
Става и с php
Код:
<? include "http://domain.com/file.php";?>
Но зависи от сървъра дали ще са позволени тези неща
 
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

Трябва ми точно JavaScript. Защото не искам търсачките да виждат добавения текст (полезно е когато искаме да добавим в сайта си текст, който може да доведе до деиндексиране на страницата - например търговски марки на GenBucks).
 
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

Що просто не сложиш един js и го забраниш от робота
че и да не го забраниш... се тая е

и вътре document.write('и сереш сереш сереш коооклкто искаш');

или ти искаш да си гетваш направо контент от страниците?
 
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

еми сваляш хтмл-а качваш го на твоя сърв. и си го инклуде така ще е по лесно
 
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

Решението е просто:
правиш си PHP файл, в който си взимаш което съдържание ти трябва ( нека се казва fetch.php ):
Код:
<?php
  $url = "http://google.com/";
  echo file_get_contents($url);
?>
и после си викаш функцията с параметър "fetch.php" или пълния път:
Код:
document.include("http://server.com/fetch.inc");
Това което ползваш е AJAX :)
EDIT: скрипта ( JS и PHP ) може да се подобри много, ако имаш проблеми казвай
 
Последно редактирано:
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

Благодаря за коментарите.

Този на man0l най-много ми хареса :) Но няма да слагам "хттп://" в document.include, защото точно "http://"-то прави проблемите...

Но за съжаление това не е приложимо във всички случаи, защото няма как да стане когато хостингът не е мой. Смятам да инжектирам скрипта през RSS в определени RSS директории (идеята е да не се получи дублирано съдържание, защото искам да показвам една и съща информация във всички RSS директории).
 
Последно редактирано:
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

Що просто не сложиш един js и го забраниш от робота
че и да не го забраниш... се тая е

и вътре document.write('и сереш сереш сереш коооклкто искаш');

или ти искаш да си гетваш направо контент от страниците?

Това съм го правил, но не е удобно да ръгаш html код в document.write, защото трябва да се занимаваш да слагаш \ пред ".
 
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

В крайна сметка реших да го направя с iframe. Не вярвам да създаде проблеми със SEO-то, защото масово се ползват банери, кода на които представлява <iframe src="........ />.
 
От: JavaScript Include() - добавяне на файл в страницата чрез ДжаваСкрипт

Ако нямаш достъп до хоста, няма как да стане с този пример, който дадох, иначе предполагам, че може да се измисли начин да се зарежда javascript от друг сървър ( който ще парсва това, което ти трябва през същия сървър )
 

Горе