[英]Is there a way to get IE 10+ to fire an event when the overflow of an element changes?
我想測試div是否溢出。 以下代碼適用於webkit和FF。
var div = $("#myDivWithOverflow")[0];
var OnOverflowChanged = function(){
alert("OnOverflowChanged");
}
if (div.addEventListener) {
// webkit
div.addEventListener ('overflowchanged', OnOverflowChanged, false);
// firefox
div.addEventListener ('overflow', OnOverflowChanged, false);
}
據我所知,IE10 +支持addEventListener方法,但對以上任何一個事件都沒有反應。
有沒有辦法在IE中實現這一目標?
更新 :我創建了一個小提琴,該小提琴更清楚地說明了我想要實現的目標: http : //jsfiddle.net/AyKarsi/sB36r/1/不幸的是,由於某些安全限制,該小提琴根本無法在IE中使用
當前,僅Webkit瀏覽器支持overflowchanged
。
解決方法是檢查突變事件(尤其是DOMAttrModified
),並檢查溢出是否已更改。
div.addEventListener("DOMAttrModified", function() {
// check overflow value
}, false);
這不會在屏幕調整大小時觸發,因此它可能無法完全滿足您的需求。 但這是您可以尋求解決方案的地方。
在MDN上: https : //developer.mozilla.org/zh-CN/docs/Web/Guide/API/DOM/Events/Mutation_events
在Microsoft網站上: http : //msdn.microsoft.com/en-us/library/ie/dn265032(v=vs.85).aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.