0
Я создаю букмарклет модального окна, который позволяет быстро добавлять контент на мой сайт. Все работает отлично и dandy, за исключением содержимого без HTML, потому что тогда он не может добавлять данные в тело. Вместо этого я хотел бы сделать простое location.href.Обнаружить, если .append невозможно?
Текущий код:
if (typeof jQuery == 'undefined') {
var jQ = document.createElement('script');
jQ.type = 'text/javascript';
jQ.onload=runthis;
jQ.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js';
document.body.appendChild(jQ);
} else {
runthis();
}
function runthis() {
if ($("#baasframe").length == 0) {
$("body").append("\
<div id='baasframe'>\
<div id='baasframe_veil' style=''>\
<p>Loading...</p>\
</div>\
<iframe src='http://example.com/submit.php?url="+encodeURIComponent(location.href)+"&title="+encodeURIComponent(document.title)+"' onload=\"$('#baasframe iframe').slideDown(500);\">Enable iFrames.</iframe>\
<style type='text/css'>\
#baasframe_veil { display: none; position: fixed; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(0,0,0,.50); cursor: pointer; z-index: 900; }\
#baasframe_veil p { color: white; font: normal normal bold 20px/20px Helvetica, sans-serif; position: absolute; top: 50%; left: 50%; width: 10em; margin: -10px auto 0 -5em; text-align: center; }\
#baasframe iframe { display: none; position: fixed; top: 10%; left: 10%; width: 80%; height: 80%; z-index: 999; border: 10px solid rgba(0,0,0,.5); margin: -5px 0 0 -5px; }\
</style>\
</div>");
$("#baasframe_veil").fadeIn(750);
}
$("#baasframe_veil").click(function(event){
$("#baasframe_veil").fadeOut(750);
$("#baasframe iframe").slideUp(500);
setTimeout("$('#baasframe').remove()", 750);
});
}
function getSelText() {
var s = '';
if (window.getSelection) {
s = window.getSelection();
} else if (document.getSelection) {
s = document.getSelection();
} else if (document.selection) {
s = document.selection.createRange().text;
}
return s;
}
Как я могу сделать это обнаружить, что прилагаемые данные не работают, и направить его в location.href вместо этого?
Премного,
Dennis
Привет, Эли, я пробовал это, но это не сработало, попробовали ли вы сами, чтобы увидеть, работает ли это? – FLX
Я думаю, ваша проблема в том, что вы используете 'onload' в теге скрипта, который, я сомневаюсь, многие браузеры будут поддерживать. –