WebBrowser/Tools/WebHitTestResult.py

changeset 6174
bb2989d750ce
parent 6048
82ad8ec9548c
child 6645
ad476851d7e0
equal deleted inserted replaced
6173:cb1488b062a9 6174:bb2989d750ce
50 (function() {{ 50 (function() {{
51 var e = document.elementFromPoint({0}, {1}); 51 var e = document.elementFromPoint({0}, {1});
52 if (!e) 52 if (!e)
53 return; 53 return;
54 function isMediaElement(e) {{ 54 function isMediaElement(e) {{
55 return e.tagName == 'AUDIO' || e.tagName == 'VIDEO'; 55 return e.tagName.toLowerCase() == 'audio' ||
56 e.tagName.toLowerCase() == 'video';
56 }} 57 }}
57 function isEditableElement(e) {{ 58 function isEditableElement(e) {{
58 if (e.isContentEditable) 59 if (e.isContentEditable)
59 return true; 60 return true;
60 if (e.tagName == 'INPUT' || e.tagName == 'TEXTAREA') 61 if (e.tagName.toLowerCase() == 'input' ||
62 e.tagName.toLowerCase() == 'textarea')
61 return e.getAttribute('readonly') != 'readonly'; 63 return e.getAttribute('readonly') != 'readonly';
62 return false; 64 return false;
63 }} 65 }}
64 function isSelected(e) {{ 66 function isSelected(e) {{
65 var selection = window.getSelection(); 67 var selection = window.getSelection();
81 mediaMuted: false, 83 mediaMuted: false,
82 tagName: e.tagName.toLowerCase() 84 tagName: e.tagName.toLowerCase()
83 }}; 85 }};
84 var r = e.getBoundingClientRect(); 86 var r = e.getBoundingClientRect();
85 res.boundingRect = [r.top, r.left, r.width, r.height]; 87 res.boundingRect = [r.top, r.left, r.width, r.height];
86 if (e.tagName == 'IMG') 88 if (e.tagName.toLowerCase() == 'img')
87 res.imageUrl = e.getAttribute('src'); 89 res.imageUrl = e.getAttribute('src');
88 if (e.tagName == 'A') {{ 90 if (e.tagName.toLowerCase() == 'a') {{
89 res.linkTitle = e.text; 91 res.linkTitle = e.text;
90 res.linkUrl = e.getAttribute('href'); 92 res.linkUrl = e.getAttribute('href');
91 }} 93 }}
92 while (e) {{ 94 while (e) {{
93 if (res.linkTitle == '' && e.tagName == 'A') 95 if (res.linkTitle == '' && e.tagName.toLowerCase() == 'a')
94 res.linkTitle = e.text; 96 res.linkTitle = e.text;
95 if (res.linkUrl == '' && e.tagName == 'A') 97 if (res.linkUrl == '' && e.tagName.toLowerCase() == 'a')
96 res.linkUrl = e.getAttribute('href'); 98 res.linkUrl = e.getAttribute('href');
97 if (res.mediaUrl == '' && isMediaElement(e)) {{ 99 if (res.mediaUrl == '' && isMediaElement(e)) {{
98 res.mediaUrl = e.currentSrc; 100 res.mediaUrl = e.currentSrc;
99 res.mediaPaused = e.paused; 101 res.mediaPaused = e.paused;
100 res.mediaMuted = e.muted; 102 res.mediaMuted = e.muted;

eric ide

mercurial