javascript - 将 jQuery 转换为纯 JavaScript

标签 javascript jquery

我在尝试从 jQuery 转换这段代码时遇到问题成纯JavaScript .

我已经在 JSFiddle 中写下了所有内容例如。

脚本是

$(".button").click(function () {
    $pageID = $(this).attr('name');
    var htmlString = $('#' + $pageID).html();
    $('#1').html(htmlString);
});

$(".button").click(function () {
    $(".button").css('background-position', '0px 0px');
    $(this).delay(50).css('background-position', '0px -40px');
});

$(document).ready(function () {
    $("[name='page1']").trigger('click');
});

对于我使用的第一个 block

function changeNavigation(id){
    document.getElementById('1').innerHTML=document.getElementById(id).innerHTML;
} 

并且在每个<div id="button">添加 onclick="changeNavigation(id);"替换 idpage1 page2等各自的按钮。 这似乎工作正常。问题是第二个代码块。

我试过用

document.getElementById("button").style.background-position="0px -40px";

改变 classid属性,只是为了测试它,但它不起作用。 可能是什么问题呢?是不是纯JS不支持background-position

此外,最后一件事,是否可以使用 .innerHTML写JS代码? 我试过同时使用 JS 和 jQuery 来编写脚本,尽管它们都编写了完全相同的东西,但编写的代码不适用于 .innerHTML .

最佳答案

尝试

style.backgroundPosition

代替

style.background-position

感谢安东尼·格里斯特。

您使用的是类而不是 ID。所以它会是这样的

document.getElementsByClassName("button")[0].style.backgroundPosition="0px -40px"

关于javascript - 将 jQuery 转换为纯 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22297924/

相关文章:

javascript - 为什么内部方法的内部最后执行?

javascript - jQuery按钮一键二功能

javascript - 下一个/上一个 anchor 链接,如何在用户滚动时更新下一个/上一个链接

javascript - 当文件完成上传到服务器时,Javascript 可以关闭窗口吗?

javascript - 我可以使用 css 中的变量设置 Canvas fillStyle 吗?

javascript - 语义 UI 下拉选项数据属性

javascript - 同一页面上有两个不同的 Colorbox 弹出窗口单独设置?

Jquery toggle()、hide() 未按预期工作

javascript - jQuery 相当于 Ajax 请求中 javascript 的 Transport.responseText 吗?

javascript - Google Plus 按钮无法加载。未捕获的gapi.load