将原始 link 内容加载到终端
Load raw link contents into terminal
我正在使用原始 属性 从 url 获取格式化数据到终端,就像这样
$(function() {
var save_state = [];
var terminal = $('#term').terminal(function(command, term) {
term.pause();
url = ...;
$.get(url, function(result) {
term.echo(result, {raw:true}).resume();
});
}, { prompt: '>>', name: 'test', outputLimit: 1000 });
});
我想知道,我如何才能在点击结果中的链接时,将它们的数据加载到终端中,就像加载命令数据一样,而不是打开一个新的浏览器选项卡?
谢谢!
如果您使用的命令包含 URL 或 URI(例如 get foo.html
或 get https://example.com
),您可以使用:
terminal.on('click', '.terminal-output > div:not(.exception) a', function() {
// if you don't use `true` it will show the command like if you type it
// instead of `get` you can use any command you have that will
// fetch the url and display it on the terminal
terminal.exec('get ' + $(this).attr('href'), true);
return false; // prevent following the link
});
如果您有不同的显示 url 的逻辑,您可能需要在点击事件处理程序中从解释器中提取代码。
terminal.on('click', '.terminal-output > div:not(.exception) a', function() {
// duplicated code from your interpreter
term.pause();
var url = $(this).attr('href');
$.get(url, function(result) {
term.echo(result, {raw:true}).resume();
});
return false;
});
我正在使用原始 属性 从 url 获取格式化数据到终端,就像这样
$(function() {
var save_state = [];
var terminal = $('#term').terminal(function(command, term) {
term.pause();
url = ...;
$.get(url, function(result) {
term.echo(result, {raw:true}).resume();
});
}, { prompt: '>>', name: 'test', outputLimit: 1000 });
});
我想知道,我如何才能在点击结果中的链接时,将它们的数据加载到终端中,就像加载命令数据一样,而不是打开一个新的浏览器选项卡?
谢谢!
如果您使用的命令包含 URL 或 URI(例如 get foo.html
或 get https://example.com
),您可以使用:
terminal.on('click', '.terminal-output > div:not(.exception) a', function() {
// if you don't use `true` it will show the command like if you type it
// instead of `get` you can use any command you have that will
// fetch the url and display it on the terminal
terminal.exec('get ' + $(this).attr('href'), true);
return false; // prevent following the link
});
如果您有不同的显示 url 的逻辑,您可能需要在点击事件处理程序中从解释器中提取代码。
terminal.on('click', '.terminal-output > div:not(.exception) a', function() {
// duplicated code from your interpreter
term.pause();
var url = $(this).attr('href');
$.get(url, function(result) {
term.echo(result, {raw:true}).resume();
});
return false;
});