我正在构建一个chrome扩展,并且想要为src编码为base64数据而不是url的图像设置一个独特的contextMenu(向右键菜单添加元素)。
我可以使用targetUrlPatterns https://developer.chrome.com/extensions/match_patterns
的'匹配模式'语法成功过滤网址(此处为jpgs)chrome.contextMenus.create({
'title' : 'This is a jpeg',
'type' : 'normal',
'targetUrlPatterns':['*://*/*.jpg', '*://*/*.jpeg'],
'contexts' : ['image'],
'onclick' : getClickHandler()
});
但是,我不能找到匹配base 64 src的方法,因为它们不遵循Match Pattern似乎需要的标准url格式。
例如,我想识别图像src,如下所示:
SRC =“数据:图像/ JPEG; BASE64,/ 9J / 4AAQSkZJRgABAQAAAQABAAD / 2wCEAAkGBxQSEhUUEhQWFRUWFBQVFBQ ...
但是无法通过Match Pattern的文档找到一个好方法。
chrome.contextMenus.create({
'title' : 'This is a data url',
'type' : 'normal',
'targetUrlPatterns':['*data ... ???'],
'contexts' : ['image'],
'onclick' : getClickHandler()
});
编辑:排除任何 not jpegs的图像以完全避免base64匹配问题也是一个胜利,但匹配模式语法似乎没有排除模式。