导航:首页 > 编程语言 > chromejs读取目录

chromejs读取目录

发布时间:2025-08-29 17:53:05

『壹』 js如何获取file控件的完整路径

代码如下:
<script type="text/javascript">
//FX获取文件路径方法
function readFileFirefox(fileBrowser) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}
catch (e) {
alert('无法访问本地文件,由于浏览器安全设置。为了克服这一点,请按照下列步骤操作:(1)在地址栏输入"about:config";(2) 右键点击并选择 New->Boolean; (3) 输入"signed.applets.codebase_principal_support" (不含引号)作为一个新的首选项的名称;(4) 点击OK并试着重新加载文件');
return;
}
var fileName=fileBrowser.value; //这一步就能得到客户端完整路径。下面的是否判断的太复杂,还有下面得到ie的也很复杂。
var file = Components.classes["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
try {
// Back slashes for windows
file.initWithPath( fileName.replace(/\//g, "\\\\") );
}
catch(e) {
if (e.result!=Components.results.NS_ERROR_FILE_UNRECOGNIZED_PATH) throw e;
alert("File '" + fileName + "' cannot be loaded: relative paths are not allowed. Please provide an absolute path to this file.");
return;
}
if ( file.exists() == false ) {
alert("File '" + fileName + "' not found.");
return;
}
return file.path;
}
//根据不同浏览器获取路径
function getvl(){
//判断浏览器
var Sys = {};
var ua = navigator.userAgent.toLowerCase();
var s;
(s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
(s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
(s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
(s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
(s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
var file_url="";
if(Sys.ie<="6.0"){
//ie5.5,ie6.0
file_url = document.getElementById("file").value;
}else if(Sys.ie>="7.0"){
//ie7,ie8
var file = document.getElementById("file");
file.select();
file_url = document.selection.createRange().text;
}else if(Sys.firefox){
//fx
//file_url = document.getElementById("file").files[0].getAsDataURL();//获取的路径为FF识别的加密字符串
file_url = readFileFirefox(document.getElementById("file"));
}
//alert(file_url);
document.getElementById("text").innerHTML="获取文件域完整路径为:"+file_url;
}
</script>
<h1>JS获取文件域完整路径的方法,兼容不同浏览器</h1>
<div id="text" style="color:#f00;"></div>
<input type="file" id="file" />
<input name="" type="button" value="获取" onClick="getvl();">

『贰』 Chrome插件如何向网页输入js文件

Chrome插件可以通过以下方式向网页注入JS文件

  1. 使用内容脚本

    • 内容脚本是Chrome扩展中一种特殊的脚本,它可以在匹配的网页中自动运行。
    • 要向网页注入JS文件,可以将该JS文件的代码直接写入内容脚本中,或者通过内容脚本动态加载该JS文件。
  2. 动态加载JS文件

    • 在内容脚本中,可以使用XMLHttpRequest或fetch API从服务器获取JS文件的内容,然后使用eval函数或创建一个新的<script>元素并将JS代码设置为该元素的textContent来执行该代码。
    • 注意:出于安全考虑,不建议使用eval函数,因为它会执行传入的任意代码,可能导致安全风险。使用<script>元素是更安全和常见的做法。
  3. 使用chrome.tabs.executeScript方法

    • 如果你的扩展需要在特定时刻向网页注入JS代码,可以使用chrome.tabs.executeScript方法。
    • 这个方法允许你指定要在哪个标签页中执行的代码,以及是否要注入文件或代码字符串。
    • 例如,要注入一个JS文件,可以这样使用:javascriptchrome.tabs.executeScript; 如果要注入代码字符串,可以这样使用:javascriptchrome.tabs.executeScript;'});
  4. 注意事项

    • 权限声明:在manifest.json文件中,你需要声明要注入JS代码的网页的匹配模式,以及是否需要"activeTab"或"tabs"权限。
    • 安全性:确保注入的JS代码是安全的,避免执行不受信任的代码,以防止跨站脚本攻击。
  5. 参考代码示例

    • 以下是一个简单的示例,展示了如何使用chrome.tabs.executeScript方法向当前活动的标签页注入一个JS文件:javascript// 在背景脚本或弹出页面脚本中chrome.tabs.query {chrome.tabs.executeScript { console.log;});});总结:Chrome插件可以通过内容脚本、动态加载JS文件或使用chrome.tabs.executeScript方法向网页注入JS代码。在实际开发中,应根据具体需求选择合适的方法,并确保代码的安全性和稳定性。
阅读全文

与chromejs读取目录相关的资料

热点内容
蓝牙手机互传的文件放在哪里 浏览:129
苹果手机如何修改文件名称 浏览:932
编程m27是什么意思 浏览:790
threejsload 浏览:356
红米手机文件夹哪些是照片视频 浏览:19
ocx文件是什么文件 浏览:183
迷你科罗纳升级 浏览:811
做一份工艺文件多少钱 浏览:324
编程中的g什么意思 浏览:818
bin文件用什么写 浏览:217
chromejs读取目录 浏览:842
苹果qq上的文件保存到手机哪里了 浏览:182
lol英雄数据网站怎么打不开了 浏览:884
vb文件转二进制文件格式 浏览:753
java中map的key可以有哪些类型 浏览:812
曲线数据选择如何选两组不同数据 浏览:102
jsp对文件重命名 浏览:171
excel如何判断指定文件夹 浏览:740
为什么app更新了完了总是闪退 浏览:661
三星note5软件备份工具 浏览:593

友情链接