Ghi chú các phương pháp nhỏ lẻ

Biểu tượng favicon cho trang web

<link rel="shortcut icon" href="images/dnalims.ico">

Chiều cao vùng hiển thị trang web

document.documentElement.clientHeight

Lấy vị trí thực tế của phần tử

var rect = Dom.getBoundingClientRect();

Điều chỉnh chiều cao iframe tự động theo cửa sổ

// Điều chỉnh chiều cao iframe khi thay đổi kích thước cửa sổ
window.onresize = function () {
    capNhatChieuCaoIframe();
}
function capNhatChieuCaoIframe(maSo) {
    var chieuCaoMang = document.documentElement.clientHeight
    // Nếu có mã số (đơn lẻ), chỉ cập nhật theo mã
    if (maSo != undefined && maSo != null && maSo != "") {
        var iframe = document.querySelector("#MainBox iframe.ifm_" + maSo)
        iframe.height = chieuCaoMang - 56
    }
    // Nếu không có mã số (nhiều iframe), cập nhật toàn bộ
    else {
        var iframes = document.querySelectorAll("#MainBox iframe")
        for (var i = 0; i < iframes.length; i++) {
            iframes[i].height = chieuCaoMang - 56
        }
    }
}

Yêu cầu XHR cơ bản

// Lấy thông tin đăng nhập
function layThongTinDangNhap() {
    var xmlhttp = new XMLHttpRequest()
    xmlhttp.open("post", "/api/getuser", false);
    // Thiết lập định dạng gửi dữ liệu
    xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlhttp.send("{}");// Dữ liệu gửi đi phải là chuỗi
    if (xmlhttp.status == 200 && xmlhttp.readyState == 4) {
        var ketQua = xmlhttp.responseText
        // xmlhttp.responseText chứa kết quả trả về
        if (ketQua == "error: no login user") {
            thoatHeThong()
        } else {
            ketQua = JSON.parse(ketQua)
            // head_info.placeName = ketQua.organization_name
            head_info.tenNguoiDung = ketQua.full_name
            head_info.maNguoiDung = ketQua.id
        }
    }
}

Hiệu ứng làm nổi bật phần tử

// Thêm lớp nổi bật cho mục điều hướng được chọn
function themLopNoiBat(maSo) {
    var danhSachLink = document.querySelectorAll('.link')
    for (var i = 0; i < danhSachLink.length; i++) {
        // Thêm lớp nổi bật cho phần tử được chọn
        if (danhSachLink[i].getAttribute('init-no') == maSo) {
            danhSachLink[i].classList.add('curritem');
        }
        // Xóa lớp nổi bật khỏi các phần tử khác
        else {
            danhSachLink[i].classList.remove('curritem');
        }
    }
}

Chuyển đổi timestamp thành định dạng 2017-01-01 00:00:00

function themSo0(so) {
    return so < 10 ? '0' + so : so
}
function chuanHoaThoiGian(mucThoiGian) {
    // mucThoiGian phải là số nguyên
    var thoiDiem = new Date(mucThoiGian);
    var nam = thoiDiem.getFullYear();
    var thang = thoiDiem.getMonth() + 1;
    var ngay = thoiDiem.getDate();
    var gio = thoiDiem.getHours();
    var phut = thoiDiem.getMinutes();
    var giay = thoiDiem.getSeconds();
    return nam + '-' + themSo0(thang) + '-' + themSo0(ngay) + ' ' + themSo0(gio) + ':' + themSo0(phut) + ':' + themSo0(giay);
}

Lấy thời gian hiện tại (yyyy-mm-dd hh:mm:ss)

function themSo0(so) {
    return so > 9 ? (so + "") : ("0" + so);
}
// Chuyển đổi thành định dạng '1900-01-01 00:00:00'
function layThoiGianHienTai() {
    let thoiDiem = new Date()
    let nam = thoiDiem.getFullYear();
    let thang = thoiDiem.getMonth() + 1;
    let ngay = thoiDiem.getDate();
    let gio = thoiDiem.getHours();
    let phut = thoiDiem.getMinutes();
    let giay = thoiDiem.getSeconds();
    return nam + "-" + themSo0(thang) + "-" + themSo0(ngay) + " " + themSo0(gio) + ":" + themSo0(phut) + ":" + themSo0(giay);
}
console.log(layThoiGianHienTai())

Xóa toàn bộ phần tử con

 function xoaTatCaPhanTuCon(phanTuCha) {
     while (phanTuCha.hasChildNodes()) // Kiểm tra tồn tại phần tử con
     {
         phanTuCha.removeChild(phanTuCha.firstChild);
     }
 }

Kiểm tra phiên bản trình duyệt

function layThongTinTrinhDuyet() {
        var trinhDuyet = window.navigator.userAgent.toLowerCase();
        // IE 
        if (trinhDuyet.indexOf("msie") >= 0) {
            var phiBan = trinhDuyet.match(/msie ([\d.]+)/)[1];
            return { type: "IE", version: phiBan };
        }
        // Firefox 
        else if (trinhDuyet.indexOf("firefox") >= 0) {
            var phiBan = trinhDuyet.match(/firefox\/([\d.]+)/)[1];
            return { type: "Firefox", version: phiBan };
        }
        // Chrome
        else if (trinhDuyet.indexOf("chrome") >= 0) {
            var phiBan = trinhDuyet.match(/chrome\/([\d.]+)/)[1];
            return { type: "Chrome", version: phiBan };
        }
        // Opera
        else if (trinhDuyet.indexOf("opera") >= 0) {
            var phiBan = trinhDuyet.match(/opera.([\d.]+)/)[1];
            return { type: "Opera", version: phiBan };
        }
        // Safari
        else if (trinhDuyet.indexOf("Safari") >= 0) {
            var phiBan = trinhDuyet.match(/version\/([\d.]+)/)[1];
            return { type: "Safari", version: phiBan };
        }
    }
    alert("Trình duyệt:" + layThongTinTrinhDuyet().type + "\n Phiên bản:" + layThongTinTrinhDuyet().version);

Thẻ: JavaScript DOM iframe xhr định dạng thời gian

Đăng vào ngày 19 tháng 6 lúc 06:16