IE只有bug ...去图......
当我这样做时,我得到Object不支持这个属性或方法...
$('#the-content').showAsModal({
'leftPosition': 100,
'topPosition': 200,
'centerX': true
});
我像这样扩展了jQuery ......
(function ($) {
$.fn.showAsModal = function (options) {
var settings = $.extend({
'leftPosition': 0,
'topPosition': 0,
'transition': 'none',
'transitionSpeed': 500,
'zIndex': 9001,
'centerX': false,
'centerY': false
}, options || {});
return this.each(function () {
var self = $(this)
if (settings.centerY) settings.y = Math.floor((($(document).height() - self.height()) / 2);
if (settings.centerX) settings.x = Math.floor(($(document).width() - self.width()) / 2);
self.css({ 'position': 'absolute', 'top': settings.y + "px", 'left': settings.x + "px", 'z-index': settings.zIndex });
if (self.parent('.modal-container').length <= 0)
self.wrap("<div style=\"display:none;\" class=\"modal-container\"></div>");
if (self.siblings('.modal-mask').length <= 0)
self.parent().append("<div style=\"width:" + $(document).width() + "px;height:" + $(document).height() + "px;\" class=\"modal-mask\"></div>");
self.parent().show().end();
});
};
$.say = function () {
};
})(jQuery);
我导入JQuery然后只在其中导入一个包含上述代码段的文件。
这在firefox中很有用。
让我们开始一项阻止我们使用IE的网站的人的倡议。如果我们都这样做......
答案 0 :(得分:1)
您的代码中存在语法错误,因此您的代码无法在任何浏览器中运行。
if (settings.centerY) settings.y = Math.floor((($(document).height() - self.height()) / 2);
Math.floor之后的3个括号中的一个太多