删除jQuery依赖项
Remove jQuery dependency
我正在编写一个小型HTML页面,其中包含一个具有放大功能的图像。
<div id="zoom-container">
<div id="img_wrapper" class="img-wrapper">
<img id="img_place" src="Figures/Species_copy_number.png" onclick="cenas()" />
</div>
</div>
我只在以下代码中使用jQuery:
window.zoomedIn = false;
function cenas() {
var el = this, elp = $("#zoom-container");
var zoomContainer = $("#img_wrapper");
if (window.zoomedIn) {
zoomContainer.css("transform", "");
elp.css("overflow", "auto");
window.zoomedIn = false;
} else {
var top = el.offsetTop;
var left = el.offsetLeft - 0.25*zoomContainer[0].clientWidth;
var tro = (Math.abs(elp.offsetTop - el.offsetTop) > 0) ? "bottom" : "top";
tro += (Math.abs(elp.offsetLeft - el.offsetLeft) > 0) ? " right" : " left";
zoomContainer.css({"transform-origin": tro, "transform": "scale(2)"});
window.zoomedIn = true;
}
}
为一个js函数导入一个巨大的文件似乎没有用。我试图删除它,并使用原生js使一切正常工作。到目前为止,我有这个:
window.zoomedIn = false;
function cenas() {
var el = this, elp = document.getElementById("zoom-container");
var zoomContainer = document.getElementById("img_wrapper");
if (window.zoomedIn) {
elp.setAttribute("overflow", "auto");
window.zoomedIn = false;
} else {
var top = el.offsetTop;
var left = el.offsetLeft - 0.25*zoomContainer.clientWidth;
var tro = (Math.abs(elp.offsetTop - el.offsetTop) > 0) ? "bottom" : "top";
tro += (Math.abs(elp.offsetLeft - el.offsetLeft) > 0) ? " right" : " left";
zoomContainer.setAttribute("transform-origin", tro + " 0px; transform: scale(2);");
window.zoomedIn = true;
}
}
它似乎执行了正确的css转换,但什么也没发生。
有人能帮我删除jquery依赖项吗?
感谢
编辑:用作:
window.zoomedIn = false;
function cenas() {
var el = this, elp = document.getElementById("zoom-container");
var zoomContainer = document.getElementById("img_wrapper");
if (window.zoomedIn) {
elp.setAttribute("style", "overflow: auto");
zoomContainer.setAttribute("style", "transform :'"'"");
window.zoomedIn = false;
} else {
var top = el.offsetTop;
var left = el.offsetLeft - 0.25*zoomContainer.clientWidth;
var tro = (Math.abs(elp.offsetTop - el.offsetTop) > 0) ? "bottom" : "top";
tro += (Math.abs(elp.offsetLeft - el.offsetLeft) > 0) ? " right" : " left";
zoomContainer.setAttribute("style", "transform-origin: "+ tro + " 0px; transform: scale(2);");
window.zoomedIn = true;
}
}
"transform-origin"
不是属性。"style"
是要设置的属性。
您可以使用style.properties=value
相关文章:
- jquery中的复选框依赖项
- AngularJS或jquery中的依赖级联下拉框列表
- 如何隐藏&使用jQuery禁用依赖于另一个字段值的字段
- Ajax xml源解析依赖于jQuery的点击操作
- 在 webpack 中管理 jQuery 插件依赖关系
- Jquery使用依赖项进行验证,而未填充检查
- 试图使一个事件依赖于另一个事件,并使用jquery自定义事件传递数据
- 使用jquery如何自动删除下拉列表中的第一个空白选项(如果它依赖于另一个选项)
- SignalR为什么依赖jQuery
- JQuery对话框,其内容依赖于javascript
- 依赖于jquery和css的html标记中的安全问题
- jQuery插件使用Backbone.js和require.js - 如何将“this”变量传递给依赖项
- 需要 JS 主干 JS jQuery 模板标记依赖
- 表中的 Jquery 依赖下拉列表
- jQuery ajax 调用链与多个依赖项
- Jquery 刷新页面依赖于 if-else 语句
- Jquery 依赖下拉列表以加载到文档就绪
- 检查可见性并使用jquery/javascript添加一个类,但不能依赖于滚动事件
- 删除对backline.router和视图的jquery/zepto依赖关系
- 如果依赖输入中的值未手动更改,Jquery输入值不会更改