我有以下代码:
<script type="text/javascript">
$(document).ready(function() {
$('<div id="tools" style="text-align:right;float:right;"><input type="button" value="Print this page" onclick="window.print();return false;" /><input type="button" value="Save this page" onclick="go_saveas();return false;" /></div>').insertBefore('body');
});
</script>
基本上,我需要在<body>
标记后面插入整个Div:
</head>
<body>
<div id="tools"..
...
哪个适用于Firefox,但在IE 7中不起作用,我需要更改什么才能解决此问题?
答案 0 :(得分:12)
您正在使用insertBefore
。这会尝试将其置于head
和body
之间;不是你想要的。试试prependTo
。
答案 1 :(得分:2)
<script type="text/javascript">
$(document).ready(function() {
$('<div id="tools" style="text-align:right;float:right;"><input type="button" value="Print this page" onclick="window.print();return false;" /><input type="button" value="Save this page" onclick="go_saveas();return false;" /></div>')
.prependTo('body');
});
</script>
答案 2 :(得分:2)
使用prependTo而不是使用insertBefore。 这样:
<script type="text/javascript">
$(document).ready(function() {
$('<div id="tools" style="text-align:right;float:right;"><input type="button" value="Print this page" onclick="window.print();return false;" /><input type="button" value="Save this page" onclick="go_saveas();return false;" /></div>').prependTo('body');
});
</script>
insertBefore在标记之前插入代码。这就是为什么它会给你带来麻烦。 你很幸运,Firefox将其修正为你想要的。 现在,prependTo将其插入到您的标记中,但在其所有内容之前。 ;)