mirror of https://github.com/gorhill/uBlock.git
#1048: also need the fix for resources loaded later
This commit is contained in:
parent
669850821a
commit
e15001bae1
|
@ -213,6 +213,7 @@ var messager = vAPI.messaging.channel('contentscript-end.js');
|
||||||
//console.debug('µBlock> generic cosmetic filters: injecting %d CSS rules:', selectors.length, text);
|
//console.debug('µBlock> generic cosmetic filters: injecting %d CSS rules:', selectors.length, text);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
var hideElements = function(selectors) {
|
var hideElements = function(selectors) {
|
||||||
// https://github.com/gorhill/uBlock/issues/207
|
// https://github.com/gorhill/uBlock/issues/207
|
||||||
// Do not call querySelectorAll() using invalid CSS selectors
|
// Do not call querySelectorAll() using invalid CSS selectors
|
||||||
|
@ -230,6 +231,7 @@ var messager = vAPI.messaging.channel('contentscript-end.js');
|
||||||
elems[i].style.setProperty('display', 'none', 'important');
|
elems[i].style.setProperty('display', 'none', 'important');
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
// Extract and return the staged nodes which (may) match the selectors.
|
// Extract and return the staged nodes which (may) match the selectors.
|
||||||
|
|
||||||
|
@ -534,17 +536,15 @@ var messager = vAPI.messaging.channel('contentscript-end.js');
|
||||||
var filterRequestId = 1;
|
var filterRequestId = 1;
|
||||||
var filterRequests = {};
|
var filterRequests = {};
|
||||||
|
|
||||||
var FilterRequest = function(target, selector) {
|
var FilterRequest = function(target, tagName, attr) {
|
||||||
this.id = filterRequestId++;
|
this.id = filterRequestId++;
|
||||||
this.target = target;
|
this.target = target;
|
||||||
this.selector = selector;
|
this.tagName = tagName;
|
||||||
|
this.attr = attr;
|
||||||
};
|
};
|
||||||
|
|
||||||
FilterRequest.send = function(target, tagName, prop, src) {
|
FilterRequest.send = function(target, tagName, prop, src) {
|
||||||
var req = new FilterRequest(
|
var req = new FilterRequest(target, tagName, prop);
|
||||||
target,
|
|
||||||
tagName + '[' + prop + '="' + src + '"]'
|
|
||||||
);
|
|
||||||
filterRequests[req.id] = req;
|
filterRequests[req.id] = req;
|
||||||
messager.send(
|
messager.send(
|
||||||
{
|
{
|
||||||
|
@ -559,7 +559,7 @@ var messager = vAPI.messaging.channel('contentscript-end.js');
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
// Process answer: collapse, hide, or do nothing.
|
// Process answer: collapse, or do nothing.
|
||||||
|
|
||||||
var onAnswerReceived = function(details) {
|
var onAnswerReceived = function(details) {
|
||||||
// This should not happen under normal circumstances. It probably can
|
// This should not happen under normal circumstances. It probably can
|
||||||
|
@ -590,11 +590,18 @@ var messager = vAPI.messaging.channel('contentscript-end.js');
|
||||||
// Never remove elements from the DOM, just hide them
|
// Never remove elements from the DOM, just hide them
|
||||||
req.target.style.setProperty('display', 'none', 'important');
|
req.target.style.setProperty('display', 'none', 'important');
|
||||||
|
|
||||||
|
// https://github.com/gorhill/uBlock/issues/1048
|
||||||
|
// We need to use the atrtibute value for the CSS rule
|
||||||
|
var value = req.target.getAttribute(req.attr);
|
||||||
|
if ( !value ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
messager.send({
|
messager.send({
|
||||||
what: 'injectedSelectors',
|
what: 'injectedSelectors',
|
||||||
type: 'net',
|
type: 'net',
|
||||||
hostname: window.location.hostname,
|
hostname: window.location.hostname,
|
||||||
selectors: req.selector
|
selectors: req.tagName + '[' + req.attr + '="' + value + '"]'
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue