我是Web设计的初学者,我确实一直在为此绞尽脑汁,但是无法弄清楚。我在网上找到的示例中的一个独立页面下面,有一个弹出窗口。我希望当我单击Chrome扩展程序按钮时,将该弹出窗口注入到我正在使用的任何活动网站中,以便此弹出窗口完全嵌入其中。我只是不知道如何使它在Chrome中工作。我看到一个示例项目使用jQuery尝试通过某种类型的弹出式容器使用jQuery加载来实现此目的,但无法自己使用。
以下是我的常规HTML示例的源代码,有人可以建议如何使用Chrome扩展程序将此弹出式表单插入网页吗?
更新:这是我尝试在Chrome扩展程序popup.js文件中使用的示例。在注入另一个框架时,它只会在弹出窗口中执行此操作,而不会在选项卡中打开的活动网站中进行操作。
$(function(){
// Within a content script:
var f = document.createElement('iframe');
f.src = chrome.extension.getURL('basic_working_popup.html');
document.body.appendChild(f); // Append to body, for example.
});
基本工作Popup.css
a.selected {
background-color:#1F75CC;
color:white;
z-index:100;
}
.messagepop {
background-color:#FFFFFF;
border:1px solid #999999;
cursor:default;
display:none;
margin-top: 15px;
position:absolute;
right:0;
bottom:0;
text-align:left;
width:294px;
z-index:50;
padding: 25px 25px 20px;
}
label {
display: block;
margin-bottom: 3px;
padding-left: 15px;
text-indent: -15px;
}
.messagepop p, .messagepop.div {
border-bottom: 1px solid #EFEFEF;
margin: 8px 0;
padding-bottom: 8px;
}
<html>
<head>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script src="js/jquery-ui.js"></script>
<script src="js/jquery.autoresize.min.js"></script>
<link rel="stylesheet" href="css/jquery-ui.css" />
<link rel="stylesheet" href="css/jquery-ui.structure.css" />
<link rel="stylesheet" href="css/jquery-ui.theme.css" />
<link rel="stylesheet" href="basic working popup.css" />
<script type="text/javascript">
function deselect(e) {
$('.pop').slideFadeToggle(function() {
e.removeClass('selected');
});
}
$(function() {
$('#contact').on('click', function() {
if($(this).hasClass('selected')) {
deselect($(this));
} else {
$(this).addClass('selected');
$('.pop').slideFadeToggle();
}
return false;
});
$('.close').on('click', function() {
deselect($('#contact'));
return false;
});
});
$.fn.slideFadeToggle = function(easing, callback) {
return this.animate({ opacity: 'toggle', height: 'toggle' }, 'fast', easing, callback);
};
</script>
</head>
<body>
<div class="messagepop pop">
<form method="post" id="new_message" action="/messages">
<p><label for="email">Your email or name</label><input type="text" size="30" name="email" id="email" /></p>
<p><label for="body">Message</label><textarea rows="6" name="body" id="body" cols="35"></textarea></p>
<p><input type="submit" value="Send Message" name="commit" id="message_submit"/> or <a class="close" href="/">Cancel</a></p>
</form>
</div>
<a href="/contact" id="contact">Contact Us</a>
</body>
</html>