我可以用jQuery获得高度
$(item).outerHeight(true);
Run Code Online (Sandbox Code Playgroud)
但是我如何使用JS?
我可以得到李的高度
document.getElementById(item).offsetHeight
Run Code Online (Sandbox Code Playgroud)
但是当我尝试使用margin-top时,我总会得到""
document.getElementById(item).style.marginTop
Run Code Online (Sandbox Code Playgroud) 我在Safari上打印时遇到问题.我的系统是Windows 7,此功能在除Safari之外的所有其他浏览器中都能正常运行.情况如下:
window.onload = function(){
console.log('before print');
window.print();
}
Run Code Online (Sandbox Code Playgroud)
它不会输出登录控制台面板,但首先会出现打印页面,在打印页面中选择取消后,将输出日志.
有没有人提出这个问题?任何帮助将不胜感激.
更新
这是我的情况:我们需要打印一个页面,其内容可以由用户通过选中和取消选中复选框进行更改,并且只打印此页面的内容部分,因此我们创建一个仅包含内容的新页面用于印刷.在此页面中,我们需要隐藏用户未选择的不必要内容,因此我们需要在window.print()调用之前执行一些DOM操作.这console.log()只是观察的示例代码.我尝试添加一个<div id='test'>Test HTML</div>测试HTML并添加
var test = document.getElementById('test');
test.style.background = 'yellow';
Run Code Online (Sandbox Code Playgroud)
之前window.print();,它在我的Safari浏览器中显示相同的结果,"测试HTML"在我单击打印面板中的取消按钮之前不会变为黄色,所以这不仅仅是console.log问题.
更新
我在Windows 7上使用Safari 5.1.7(7534.57.2)
我有TinyMCE的,当我把麻烦<script type="text/javascript" src="/scripts/tiny_mce/tiny_mce.js">来<head>,并把初始化代码之前<textarea class="tinyMceEditor">,它工作正常.init代码是这样的:
tinyMCE.init({
mode : "specific_textareas",
editor_selector : "tinyMceEditor",
plugins : "inlinepopups,advlink",
convert_urls : false,
theme : "advanced",
theme_advanced_buttons1 : "link,unlink",
width: "602",
height: "175",
theme_advanced_statusbar_location : "none"});
Run Code Online (Sandbox Code Playgroud)
但是现在,我想推迟加载tiny_mce.js,当用户第一次点击一个按钮时,将加载tiny_mce.js,然后追加<textarea class="tinyMceEditor">到<body>,然后使用前面的代码执行init工作,但是这个时间,它不会初始化tinyMCE编辑器,它只显示<textarea class="tinyMceEditor">
谷歌搜索,但没有发现与此有关,任何人都遇到了这个问题?
任何建议将不胜感激.
我查看了chrome web开发人员工具,发现如果我动态加载tinymce.js,其他需要的js,如en.js,editor_template.js,editor_plugin.js等将不会被加载.即使我将这些js文件添加到动态加载中,仍然无法使用tinymce.
感谢您的帮助,我看着萤火虫,我也得到追加载入前tinymce.js <textarea来<body>,然后我追加<textarea>,做TinyMCE的init(),我使用LazyLoad(jQuery插件)来动态加载js文件.
这就是我所做的
if(typeof TinyMCE == "undefined"){
//dynamically load the tinymce.js
LazyLoad(['tinymce.js'],function(){
//callback function, called after tinymce is loaded
$('body').append('<textarea class="TinyMceEditor"/>');
tinyMCE.init({init settings});
});
} …Run Code Online (Sandbox Code Playgroud)