热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

删除垃圾代码前的一些保存

删除垃圾代码前的一些保存content_script.jswindow.addEventListener(load,function(){chrome.extension.se

删除垃圾代码前的一些保存

content_script.js

// window.addEventListener("load", function() {
//     chrome.extension.sendMessage({
//         type: "dom-loaded", 
//         data: {
//             myProperty: "this is so cool!!!----One-Time Requests,communication happens only once"
//         }
//     });
// }, true);

//=======================this is for the hover=======================
(function(window){
var document = window.document,
    body = document.body,
    a = document.getElementsByTagName(‘a‘),  //for get a href,returns a live HTMLCollection of elements with the given tag name
    currentLength = a.length,
    currentLinks = [],
    displayTimeout,
    normalURL,
    zIndex=100,
    container,
    containerLabel,
    button,
    size = 1.0,
    rate,
    on,
    showModel,
    hovernow,  //to judge whether the mouse point is on hovering
    delayTime;

loadSettings();
addEvents();
drawWindow();



//从storage中获得值,进行初始化工作
function loadSettings(){
    chrome.storage.sync.get([
        ‘hoverLinkPosition‘,
        ‘hoverLinkOffsetX‘,
        ‘hoverLinkOffsetY‘,
        ‘hoverLinkNormal‘,
        ‘hoverLinkDelayTime‘,
        ‘hoverLinkRate‘,
        ‘on‘,
        ‘model‘],
         function(data){
         rate = data.hoverLinkRate;    
         moveBox(data.hoverLinkPosition, data.hoverLinkOffsetX, data.hoverLinkOffsetY);
         normalURL = data.hoverLinkNormal;
         delayTime = data.hoverLinkDelayTime;
         on = data.on;
         showModel = data.model;
         // console.log("log in content"+on);
    });
}

function moveBox(s,x,y){
    // var str = "Hello world!";
 //      var res = str.substr(1, 4)
    var a = s.substring(0,s.indexOf(‘-‘)),
        b = s.substr(s.indexOf(‘-‘)+1);  // ??
        // console.log(a); //top
        // console.log(b);  //right
       // container.setAttribute(‘style‘,‘z-index:‘+zIndex+‘;‘);
        container.style[a]=y+‘px‘;  //style里面存放json ,所以a,b是key
        container.style[b]=x+‘px‘;
        container.style[‘overflow‘]=‘scroll‘;
        container.style[‘max-width‘]=‘1450px‘;
        container.style[‘max-height‘]=‘400px‘;
        container.style[‘-webkit-transform‘] = ‘scale(‘+rate+‘)‘;
        container.style[‘-webkit-transform-origin‘] = ‘0px 0px‘;

        //"-webkit-transform: scale(0.43);-webkit-transform-origin: 200px 100px;overflow:scroll"
}

function addEvents(){
    for(var i=currentLength-1;i>=0;i--){
        addEvent(a[i]);
        currentLinks.push(a[i]); //放入数组中
    }


}

function addEvent(a){
    a.addEventListener(‘mouseover‘,linkMouseOver,false);//当mouseover触发,调用linkMouseOver
    a.addEventListener(‘mouseleave‘,linkMouseOut,false);
    $(‘body‘).on(‘click‘,mouseclick);
}


function linkMouseOver(event){
    var url = this.href;  //this应该指a标签
    //console.log("client :top->"+event.clientY+" left->"+event.clientX +" offset:top->"+window.pageYOffset+" left->"+window.pageXOffset);
    container.style[‘top‘] = event.clientY+‘px‘
    container.style[‘left‘] = event.clientX+‘px‘;
    hovernow = 1;
    displayTimeout = setTimeout(function(){
         displayBox();
         setTimeout(function(){
           mouseOver(url);
         },1000);
         //mouseOver(url);
    },delayTime)

}

function linkMouseOut(event){
    console.log(‘now mouseout‘);
    hovernow = 0;
    clearTimeout(displayTimeout); //Prevent the function set with the setTimeout() to execute
    if(!container){
    //$("body").removeChild(container);
    body.removeChild(container);
    }else{
        container.style.display= ‘none‘;
    }
     
}

function mouseOver(url){
    if(hovernow==1){
        console.log(‘now mouseover‘);
        $.post(‘http://gozoom4235.appspot.com/highlight.php‘,{url:url},function(webdata){
        //displayBox();
        if(showModel==1){   
            insertLabel(webdata);
        }else{     
        showWord(webdata);
        }
        })
    }

}

function mouseclick(event){
    clearTimeout(displayTimeout);
    if(!container){
    //$("body").removeChild(container);
    body.removeChild(container);
    }else{
        container.style.display= ‘none‘;
    }
}

function displayBox() {
    container.innerHTML = "loading.....";
    if(on==1){
    body.appendChild(container);//appendChild会把之前所有关于container的以html节点方式加入,到这里才会在html中显示
    $(container).show(‘fast‘);
    }
}

function requestURL(link){
    sendMessage({
        hoverLink:‘findURL‘,
        url:link
    });   //jason
}


function sendMessage(message){
    //chrome.runtime.sendMessage(message,empty);
}

function empty(){}

//========unknow
function drawWindow() {    //画一个框子显示usrl

        var all = document.getElementsByTagName(‘*‘);

        for ( var i=all.length; i >= 0; i-- ) {
            var style = getComputedStyle(all[i]);
            if ( !style )
                continue;
            var z = parseInt(style.getPropertyValue(‘z-index‘));
            if ( z > zIndex )
                zIndex = z+1;
        }

        var _cOntainer= document.createElement(‘div‘),
            _label = document.createElement(‘div‘);
             _button = document.createElement(‘button‘);
            _button.onclick = function(){
                 size = size + 0.1;  
                 set();  
            };
            _button2 = document.createElement(‘button‘);
            _button2.onclick = function(){
                size = size - 0.1;  
                set();  
            };     
        _container.id = ‘hoverLinkContainer‘;
        _container.style.zIndex = zIndex;
        _container.innerHTML = ‘Loading...‘;
        _label.id = ‘hoverLinkLabel‘;
        //_label.innerHTML = ‘Loading...‘;  //预先设置的显示
        //_label.style.cssText = "-webkit-transform: scale(1.0);-webkit-transform-origin: 0px 0px;"; //for containLabel init
        _container.appendChild(_label); 
        containerLabel=_label; //_label变成节点了?
        _button.id = "buttonLarg";
        _button2.id = "buttonSmal";
        _button.style[‘background‘]="white";
        _button.style[‘font-color‘]="black";
        _button.style[‘margin-top‘]="5px";
        button = _button;
        container = _container;
        label = _label;

    }

// function showFinalURL(url){
//    insertLabel(url);
// }    

function insertLabel(txt){
    //txt=txt.substring(1,txt.length-1);
    container.innerHTML=txt;
    //嵌入到文本中(注意是‘’不是“”)
    //container.innerHTML=‘
‘+txt+‘
‘;
} function set() { containerLabel.style.cssText = containerLabel.style.cssText + ‘; -webkit-transform: scale(‘ + size + ‘);-webkit-transform-origin: 0 0;‘; } function showWord(webdata){ $.post(‘http://gozoom4235.appspot.com/body.php‘,{webdata:webdata},function(data){ //http://localhost/body.php console.log(data); insertLabel(data);}); } })(window);

删除垃圾代码前的一些保存


推荐阅读
  • 本文探讨了如何通过优化 DOM 操作来提升 JavaScript 的性能,包括使用 `createElement` 函数、动画元素、理解重绘事件及处理鼠标滚动事件等关键主题。 ... [详细]
  • 为何Compose与Swarm之后仍有Kubernetes的诞生?
    探讨在已有Compose和Swarm的情况下,Kubernetes是如何以其独特的设计理念和技术优势脱颖而出,成为容器编排领域的领航者。 ... [详细]
  • 本文探讨了如何利用RxJS库在AngularJS应用中实现对用户单击和拖动操作的精确区分,特别是在调整区域大小的场景下。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 默认情况下,Git 使用 Nano 编辑器进行提交信息的编辑,但如果您更喜欢使用 Vim,可以通过简单的配置更改来实现这一变化。本文将指导您如何通过修改全局配置文件来设置 Vim 作为默认的 Git 提交编辑器。 ... [详细]
  • 探索Java 11中的ZGC垃圾收集器
    Java 11引入了一种新的垃圾收集器——ZGC,由Oracle公司研发,旨在支持TB级别的内存容量,并保证极低的暂停时间。本文将探讨ZGC的开发背景、技术特点及其潜在的应用前景。 ... [详细]
  • 在Notepad++中配置Markdown语法高亮及实时预览功能
    本文详细介绍了如何在Notepad++中配置Markdown语法高亮和实时预览功能,包括必要的插件安装和设置步骤。 ... [详细]
  • 网络流24题——试题库问题
    题目描述:假设一个试题库中有n道试题。每道试题都标明了所属类别。同一道题可能有多个类别属性。现要从题库中抽取m道题组成试卷。并要求试卷包含指定类型的试题。试设计一个满足要求的组卷算 ... [详细]
  • 利用无代码平台实现高效业务应用开发
    随着市场环境的变化加速,全球企业都在探索更为敏捷的应用开发模式,以便快速响应新兴的商业机遇。然而,传统的软件开发方式不仅成本高昂,而且耗时较长,这往往导致IT与业务部门之间的合作障碍,进而影响项目的成功。本文将探讨如何通过无代码开发平台解决这些问题。 ... [详细]
  • 本文介绍了如何通过安装 sqlacodegen 和 pymysql 来根据现有的 MySQL 数据库自动生成 ORM 的模型文件(model.py)。此方法适用于需要快速搭建项目模型层的情况。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 本文介绍了如何利用jQuery实现对网页上多个div元素的显示与隐藏控制,包括基本的toggle方法及更复杂的显示隐藏逻辑。 ... [详细]
  • 本文探讨了程序员这一职业的本质,认为他们是专注于问题解决的专业人士。文章深入分析了他们的日常工作状态、个人品质以及面对挑战时的态度,强调了编程不仅是一项技术活动,更是个人成长和精神修炼的过程。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
author-avatar
陆寥频
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有